2013-08-03 37 views
7

Nếu tôi hiểu nó chính xác, Visual Studio được cho là màu dữ liệu loại màu xanh. Vậy tại sao nó không làm điều đó với DateTime?Tại sao Visual Studio không làm cho DateTime thành từ khóa Xanh?

enter image description here

Cảm ơn

+0

Bạn tự hỏi tại sao Int32 không có màu xanh? bởi vì nó không phải là một 'từ khóa' Nó là một' Loại' và vì vậy nó là màu xanh lá cây trong VS –

Trả lời

14

int là một từ khóa theo quy định tại C# Language specs, trong khi DateTime là một struct. Nếu bạn sử dụng Int32, bạn sẽ nhận thấy rằng điều đó cũng sẽ chuyển sang màu giống như DateTime vì Int32 không phải là một từ khóa (mặc dù int là một bí danh cho Int32).

Cài đặt màu mặc định trong Visual Studio là để làm nổi bật màu xanh keywords, đó là lý do tại sao từ khóa bạn đã hiển thị có màu xanh dương.

+2

Câu trả lời tổng thể tốt nhất từ ​​trước tới nay. – Tim

+1

Ahh, tôi hiểu rồi. Cảm ơn bạn. Rất gọn gàng. – JimDel

+0

int aka System.Int32 cũng là một cấu trúc không phải là vấn đề để có một bí danh. Đối với một số lý do DateTime không được coi là nguyên thủy như các kiểu số, char và chuỗi. http://msdn.microsoft.com/en-us/library/system.int32(v=vs.110).aspx – t3dodson

1

DateTime không phải là một từ khóa; nó là một cấu trúc, là một ValueType, trong khi một lớp là một kiểu tham chiếu. Đây không phải là nguyên thủy, vì vậy chúng không được tô màu trừ khi bạn thay đổi màu sắc trong cài đặt VS của bạn.

Về mặt kỹ thuật, từ khóa int, string, bool và double là từ khóa, nhưng chúng ánh xạ tới tương đương Struct của chúng trong khung công tác .NET. Bằng cách này, một int hoạt động giống nhau trong VB và C#.

Vì vậy, một bản đồ int cho Int32 Struct. Chúng có màu xanh dương để bắt chước các kiểu nguyên thủy như chúng ở các ngôn ngữ khác.

Details

+4

một "cấu trúc tĩnh" là gì? – dtb

+0

Mặc dù vậy, không phải lý do tôi không tin vì Double Int32 Int64 và các bí danh kiểu dữ liệu khác cũng làm như vậy. –

+0

Có bạn là chính xác. Tôi đã suy nghĩ về DateTime.Now mà là rất phổ biến sử dụng. Tôi đã sửa lỗi của mình. –

1

DateTime là một lớp và instantiating một đối tượng của một lớp, nơi mà các kiểu dữ liệu nguyên thủy khác như int, float là tất cả các từ khóa.

0

Nếu bạn đang tìm kiếm rằng DateTime của bạn là màu đen hơn là màu tôi chỉ nhận được rằng khi cấu hình VisualStudio của tôi sai lầm và trở về mặc định.

Nếu bạn vào TOOLS> Tùy chọn> Môi trường> Phông chữ và Màu sắc sau đó cuộn xuống "Loại người dùng (Loại giá trị)" sau đó thay đổi nó thành tô sáng cú pháp màu khác nhau của DateTime được khôi phục (có vẻ như đôi khi bị lỗi và không làm nổi bật ngay cả khi nó được đặt thành màu)

1

Tôi thấy rằng khi tôi thay đổi bảng màu Môi trường, tôi đã mất một số mã mặc định làm nổi bật. Chỉ cần chuyển đổi giữa các chủ đề màu khác (Xanh lam, Tối, Ánh sáng ..), vấn đề làm nổi bật mã đã được giải quyết.

Điều này có thể được thực hiện trong TOOLS> Tùy chọn> Môi trường