我在阅读一个简单的.txt时得到垃圾值
I'm getting garbage values when reading a simple .txt
我正在制作一个我想从.txt阅读怪物属性的游戏。当我读取文件并将值放入变量时,这些变量会获取垃圾数据,而不是.txt数据。这很奇怪,因为这仅在我的主要项目中发生。我创建了一个具有同一类的测试项目,并从字面上复制了代码,并且在那里工作得很完美。
这是我的文件阅读方法:
void Game::readMonsters() {
string monsterName, monsterFile = "";
int life, def, id = NULL;
ifstream monsters("assets/monsters.txt");
if (monsters) {
monsters >> nMonsterTypes; // this variable exists in Game.h
type = new MonsterType[nMonsterTypes](); // this object exists in Game.h
for (int i = 0; i < nMonsterTypes; i++) {
// all those variables are being set as memory garbage:
monsters >> id;
type[i].setID(id);
monsters >> life;
type[i].setHP(life);
monsters >> def;
type[i].setDefense(def);
monsters >> monsterFile;
type[i].setFile(monsterFile);
monsters >> monsterName;
type[i].setName(monsterName);
}
}
monsters.close();
}
我感谢任何帮助!
使用与Visual Studio的断点,我注意到错误不是在读取中,而是在"类型"数组的GET方法中。当我应该在0和nmonstertypes之间进行0时,我正在制作0和NmonsterTypes之间的rand -1(在数组中选择一个随机位置(。不过,这里有很好的建议,谢谢大家!
相关文章:
- 在c++中用vector填充一个简单的动态数组
- (C++)分析树以计算返回错误值的简单算术表达式
- 如何将 txt 文件中的行分隔为组件C++
- 我的简单if-else语句是如何无法访问的代码
- 使用简单类型列表实现的指数编译时间.为什么
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- 如何在BST的这个简单递归实现中消除警告
- 一种在C++中读取TXT配置文件的简单方法
- 如何修复此iFile以将.txt输出到控制台
- 无法打开.txt文件
- 关于简单C++函数(is_palindrome)的逻辑的问题
- 显示错误输出的简单数组排序程序
- CMakeLists.txt中的命名空间表示法
- Arduino从Txt读取整数
- 通过比较C++中的行在 txt 文件中搜索的最简单方法是什么?
- 从 txt 文件中读取数据的最简单方法
- 简单加密和解密 TXT 文件 [C++]
- 我在阅读一个简单的.txt时得到垃圾值
- 以简单格式"c:filessample.txt"从用户读取文件路径
- 简单.txt 使用 ifstream 读取文件