现在是否有常用的不符合 CLS 的 .NET 语言?看起来 VS2012 附带的每种托管语言都支持无符号整数类型,因此实际上来说,在公共(public)/ protected 类型签名中使用“无符号”可能会遇到多大麻烦?
看起来 CLR、CTS 和相关技术目前已基本“完成”,因此人们想知道 CLS 合规性对于“现代”.NET 代码有多大影响。
我们现在是否纯粹是出于动力而跳过 CLS 的圈子?
最佳答案
CLS 合规性是代码的属性,而不是语言的属性。 VB.NET 有一个早期版本,您不能意外编写不兼容的代码。这种情况并没有持续多久,它在 2005 年左右获得了对无符号整数类型的支持。
它仍然相关,您仍然可以编写一个可能在移植到 .NET 的语言中使用的库,并且不支持无符号整数或不区分大小写等。该方法很简单,您只需避免在代码中使用不兼容的功能,并且您的程序集应该可以正常工作。这很容易做到,将这行代码添加到任何地方:
[assembly:CLSCompliant(true)]
当你违反规则时,编译器会给你一个警告。
关于.net - 是否有常用的不符合 CLS 的 .NET 语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13703935/