在C#中,我喜欢var
关键字,例如:
var myList = new List<MyType>();
C ++ / CLI中是否有任何等价物,或者每次都必须重复类型名称:
List<MyType ^>^ myList = gcnew List<MyType ^>();
到目前为止,无法在文档或Google中找到明确的声明。我正在使用Visual Studio 2008。
答案 0 :(得分:36)
在Visual Studio 2008中没有这样的等价物。但是,使用Visual Studio 2010,您可以使用auto
关键字在C ++中实现var
类似语义。我知道这适用于非托管C ++,我相当肯定它也适用于C ++ / CLI。
答案 1 :(得分:12)
我知道在C++1x standard:
中设想了类型推断auto someStrangeCallableType = boost::bind(&SomeFunction, _2, _1, someObject);
auto otherVariable = 5;
目前,AFAIK,没有相应的。
答案 2 :(得分:4)
C ++有typedef。只需使用typedef别名那些毛茸茸的类型,并使用友好名称。
不,没有“var”关键字。模糊地回忆一下,在推动中会有这样的效果。
答案 3 :(得分:2)
C ++ 0x将有一个自动关键字:http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1705.pdf