【问题标题】:How to declare managed list in C++/CLI如何在 C++/CLI 中声明托管列表
【发布时间】:2015-08-04 08:55:17
【问题描述】:

使用 C++/CLI 我想声明一个列表的列表。
在声明常规列表时,我写道:

List<String^>^ NameOfList = gcnew List<String^>(2);

因此,我尝试将列表声明为:

List<List<String^>^>^ AnotherName = gcnew List<List<String^>(2)>(2);

但是,Microsoft Visual Studio 抱怨右侧的论点无效。

注意,我可以创建一个空列表

List<List<String^>^>^ AnotherName;

效果很好。有人知道这里出了什么问题吗?

【问题讨论】:

    标签: list c++-cli declaration managed


    【解决方案1】:

    您在使用构造函数参数时玩得又快又松,它不是类型签名的一部分。它设置了列表的初始容量,在很多情况下 2 很有意义。可能最好不要全部使用它,直到您了解 Capacity property does 的含义。

    您正在寻找的代码类型的最佳猜测:

    int size = 2;
    List<List<String^>^>^ AnotherName = gcnew List<List<String^>^>(size);
    for (int ix = 0; ix < size; ++ix) AnotherName->Add(gcnew List <String^>);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多