直接跳到代码,这就是我想做的:
size_t len = obj->someLengthFunctionThatReturnsTypeSizeT();
array<int>^ a = gcnew array<int>(len);
当我尝试这个时,我得到了错误
从 size_t 到 int 的转换,可能会丢失数据
有没有一种方法可以在不显式转换为 int 的情况下编译此代码?我发现我无法将数组初始化为这个大小很奇怪,特别是因为有一个 LongLength 属性(如果你只能将一个长度初始化为一个 int,你怎么能得到一个 long 的长度 - 比 int 大? )。
谢谢!
PS:我确实发现这篇文章说分配一个真正 size_t 的数组可能是不切实际的,但我不认为这是一个问题。关键是我想初始化的长度存储在 size_t 变量中。