【发布时间】:2013-07-04 01:47:16
【问题描述】:
我有一个名为 StringList 的类,它由一个构造函数和一个析构函数组成。我所追求的是我的程序即使在它没有运行之后也能够将其字符串保留在数组中。我想要这样做的方法是让我的构造函数从文件中读取字符串并将它们存储到我的字符串数组(str [])中。我的析构函数会将我当前的字符串保存到我的文件中。创建内存时,我无法从文件中读取和存储。我希望每个单词都是数组中的一个元素。 例如,在正在读取的文件中,字符串是这样存储的:
HELLO
MOM
DAD
FOUR
YELLOW
我希望每个单词都是一个槽。换句话说。 str[0] = HELLO,str[1]= MOM,str[2]=DAD 等等。
这是我的构造函数:
StringList::StringList()
{
numberOfStrings=0;
str = new string[1000000];
ifstream myfile ("Read.txt");
if (myfile.is_open())
{
for (int i = 0; i < 1000000; i++)
{
getline(myfile,str[i]);
numberOfString++;
}
myfile.close();
}
}
这里的问题是 for (int i=0; i
【问题讨论】:
-
您可以先去掉
new和delete,然后使用矢量来存储它们,并根据需要自动调整大小。
标签: c++ arrays string function