对于我正在研究的项目,我需要有一个全局的入口结构数组。我遇到了麻烦,因为在运行我的程序之前我无法分配内存我确定了文件的大小。该项目的总体目标是创建一个单词参考。到目前为止我的工作方式是:
struct info{
//stores the specific character
std:: string c;
//stores the amount of times a word has come up in the file
float num;
}
info info_store[];
这个项目是为了学习数组,所以我需要使用数组
答案 0 :(得分:1)
你可以:
- 使用new / delete []
info* p_array=new info[100]; // create an array of size 100
p_array[10].num; // member access example
delete[] p_array; // release memory
- 使用std :: unique_ptr
std::unique_ptr<info[]> array(new info[size]);
- &GT;优点是当array
被销毁(不再删除[])
答案 1 :(得分:0)
首先,使用std::vector
或任何其他STL容器。
其次,您可以使用动态数组。
auto length = count_structs(file);
auto data = new info[length];
像这样的东西。然后填写这个数组。
哦,确保你有delete [] data
来防止内存泄漏。