gpt4 book ai didi

.net - 托管 C++ 中的数组初始化

转载 作者:行者123 更新时间:2023-12-04 09:03:45 24 4
gpt4 key购买 nike

我希望声明并初始化一个一维托管项目数组。

如果是 C# 代码,我会这样写:

VdbMethodInfo[] methods = new VdbMethodInfo[] {
new VdbMethodInfo("Method1"),
new VdbMethodInfo("Method2")
};

我正在尝试在托管 C++ 中编写(嗯,实际上,我正在编写一个程序生成)同样的东西......

到目前为止,我有:
typedef array<VdbMethodInfo^, 1> MethodArray;
// How do I avoid pre-declaring the size of the array up front?
MethodArray^ methods = gcnew MethodArray(2);
methods[0] = gcnew VdbMethodInfo("Method1");
methods[1] = gcnew VdbMethodInfo("Method2");

这有两个问题:
  • 比较详细
  • 它需要我预先声明数组的大小,这对我的代码生成器来说很不方便

  • 托管 C++ 中的 GC 数组是否有“数组初始化”语法?什么是正确的语法?是否有针对此问题和其他类似问题的良好网络链接?

    最佳答案

    C++/CLI 数组声明和初始化语法与 C# 中的语法没有什么不同。这是一个例子...

    array<String^>^ myArray = gcnew array<String^> {"first",  "second"};

    关于.net - 托管 C++ 中的数组初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/834903/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com