C++Vector中push_back 的错误,求高手帮忙解决,在线等。
我写了一个从txt文件中读取字符的程序。首先这个程序有个叫word的类,类中含有储存word数据的string变量和计数器之后,我在主程序中定义了一个叫word类的容器,...
我写了一个从txt文件中读取字符的程序。首先这个程序有个叫word的类,类中含有储存word 数据的string变量和计数器
之后,我在主程序中定义了一个叫word类的容器,wordsbin.
之后我开始读取文件中的字符串,
首先,我先判断读入的字符串是否已经出现在了容器中,如果没有相同的字符串,则建立一个Word的临时变量,用于存储每一个字符串。并把它压倒容器中。(
之后出现内存溢出的错误。以下是编译错误内容。
0x200388f0 (这条信息是我后面cout出来的words对象的地址,证明读出无误。)
RUN FAILED (exit value 1, total time: 78ms)(程序到这里终止了,错误类型应该是内存溢出。)
我将上面的for循环部分去掉,将
word * words = new Word(word);
WordsBin.push_back(words);写在fin的语句下面,程序可以正常运行,但是在逻辑上,我需要先对容器内部数据进行判断。请教各位高手这个问题应该如何解决。谢谢 展开
之后,我在主程序中定义了一个叫word类的容器,wordsbin.
之后我开始读取文件中的字符串,
首先,我先判断读入的字符串是否已经出现在了容器中,如果没有相同的字符串,则建立一个Word的临时变量,用于存储每一个字符串。并把它压倒容器中。(
之后出现内存溢出的错误。以下是编译错误内容。
0x200388f0 (这条信息是我后面cout出来的words对象的地址,证明读出无误。)
RUN FAILED (exit value 1, total time: 78ms)(程序到这里终止了,错误类型应该是内存溢出。)
我将上面的for循环部分去掉,将
word * words = new Word(word);
WordsBin.push_back(words);写在fin的语句下面,程序可以正常运行,但是在逻辑上,我需要先对容器内部数据进行判断。请教各位高手这个问题应该如何解决。谢谢 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询