我正在尝试一个简单的练习,其中我为struct数据类型中保存的10个整数数组分配内存。我设法分配了内存并填充了数组。我通过输出其值和地址进行了测试。问题是,一旦我尝试取消分配内存,就会收到错误消息:
无法解析符号'operator delete []',因为它是在'C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Community \ VC \ Tools \ MSVC \ 14.15.26726 \ lib中的对象中定义的\ x86 \ MSVCRTD.lib”尚未加载。
此后还会在括号中列出Visual Studio项目的文件路径。
#include <iostream>
using namespace std;
struct structTwo {
int* numbers;
};
int main() {
structTwo myStruct;
myStruct.numbers = new int[10];
for (int i = 0; i < 10; ++i) {
*(myStruct.numbers + i) = i;
cout << *(myStruct.numbers + i) << " at " << myStruct.numbers + i
<< endl;
}
delete[] myStruct.numbers;
return 0;
}
有人知道这意味着什么吗?我是否缺少列入声明?