我有一个指向动态数组的std :: unique_ptr。如何通过将该数组移动到新的Vector对象中来实例化Platform :: Collections :: Vector的新实例?理想情况下,这样的事情:
int length = 1024;
std::unique_ptr<int[]> p = std::make_unique<int[]>(length);
Vector<int>^ vec = ref new Vector<int>(std::move(p), length); // doesn't compile
有一个Vector构造函数将std :: vector移动到它中,但是我需要以某种方式将我的unique_ptr移动到该std :: vector。我还没有办法做到这一点,理想情况应该是这样的:
int length = 1024;
std::unique_ptr<int[]> p = std::make_unique<int[]>(length);
Vector<int>^ vec = ref new Vector<int>(std::vector<int>(std::move(p), length)); // doesn't compile
显然,由于性能方面的考虑,我不想复制。有没有人知道如何正确地做到这一点?
提前致谢。