2012-01-27 16 views
6

Przeszedłem ten artykuł http://msdn.microsoft.com/en-us/library/system.clscompliantattribute.aspx i chciałbym zrozumieć jego prawdziwe znaczenie.Jakie jest znaczenie System.CLSCompliantAttribute?

Kiedy powinieneś zrobić to fałszywie?

Ponadto, jakie są pułapki polegające na niepodpisywaniu go w sposób jawny?

ja głównie tym pytaniem z powodu ostrzeżenia projektowania, które można przeczytać tutaj ... http://msdn.microsoft.com/en-us/library/ms182156.aspx

chcę zrozumieć, w jaki sposób „nie znakowania skargę biblioteki” negatywny wpływ na mnie w żaden sposób.

Odpowiedz

6

C# obsługuje niektóre funkcje, które nie są zgodne z CLS, w tym wskaźniki, niepodpisane typy liczbowe, nazwy publiczne, które różnią się tylko wielkością liter i innymi.

Publicznych członków ujawniających takie funkcje nie może być [CLSCompliant(true)].

+0

Więc, jeśli pracuję z projektem VB.NET, to zawsze powinno być prawdą? –

+0

VB.Net obsługuje również niektóre z tych funkcji, takich jak niepodpisane typy liczbowe. – SLaks

+0

Ponadto, jakie są pułapki, aby nie oznaczać tego wyraźnie? –