作为一名.Net开发,如果有一天编译器突然告诉你,你必须要为每一个list的构造函数传入参数,不能使用foreach处理数列。你会不会抓狂?
来分享下我踩到的坑
然而c++/cli是.NET兼容语言,语法自然是支持list或者foreach的使用的。所以事实上这里的语法完全没有任何问题,而且是可以通过编译的,就如同下图。
那么是什么造成这些错误提示了呢?
既然语法没有问题,那么原因就可能集中在编译器上了。
那会不会是IDE的设置问题呢?
尝试了多个vs版本以及c++编译器版本,这个错误提示都会出现。
这样一来问题就应该在项目配置上,即我们的.vcxproj上面的设置
最终在找到了ItemDefinitionGroup->ClCompile->ConformanceMode这个设置
这个设置