在C ++ / CLI中是否有与C#“var”关键字相同的名称?

时间:2010-01-05 17:48:04

标签: c# .net c++-cli type-inference

在C#中,我喜欢var关键字,例如:

var myList = new List<MyType>();

C ++ / CLI中是否有任何等价物,或者每次都必须重复类型名称:

List<MyType ^>^ myList = gcnew List<MyType ^>();

到目前为止,无法在文档或Google中找到明确的声明。我正在使用Visual Studio 2008。

4 个答案:

答案 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)