gpt4 book ai didi

c++ - 错误 R6010。为什么叫它?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:25:55 25 4
gpt4 key购买 nike

我正在创建一个基本的 2D 游戏。我的代码在 Visual Studio 2010 中运行良好。但是,当我创建一个 .exe 并运行它时,我收到一条消息,指出“调试错误,R6010,已调用中止”。

通过从头开始并添加一些代码直到找到错误,我将问题缩小到以下代码。我已经包含了整个函数,但如果需要可以提供更多代码。

对其他人问题的回答表明问题与未被捕获的错误有关(我已经尝试过 try/catch 语句但无济于事)。但是,在 Debug模式下,如果没有它们,我看不到代码在哪里运行。

如果有人有任何建议,我将不胜感激。

  void initGUI()
{

//Button Types correspond to which section of the screen the button will be displayed in.
//type 1 = Top Bar,
//type 2 = Main Body,
//type 3 = Overlay window (gui1 only)

bool endFile = false;
string totalGUIString;
string text;
vector<string> stringVector;

//Open the file
cout << "Opening file buttons.txt" << endl;
fstream textFile;
textFile.open("buttons.txt");

//Read the first line and determine the amount of GUI's that need to be created
textFile >> totalGUIString;
int totalGUIs = convertStringToInt(totalGUIString);
cout << "Total number of GUI's to load = " << totalGUIs << endl;

//Create the correct amount of GUI's
for(int j = 0; j < totalGUIs; j++)
{
guiMatrix.push_back(gui(j));
}

textFile >> text;

while(endFile == false) //Search through the main body of the file
{
//textFile >> text;

if(text == "END")
{
endFile = true;
cout << "Reached the end of the file" << endl;
}
else
{
stringVector.push_back(text);
//cout << "PushBack:" << text << endl;

if(text == "E")
{
//Use vector to populate the button constructor
int button0 = convertStringToInt(stringVector[0]);
int button1 = convertStringToInt(stringVector[1]);
string button2 = stringVector[2];
int button3 = convertStringToInt(stringVector[3]);

//cout << "TESTING:: " << button0 << " " << button1 << " " << button2 << " " << button3 << endl;

guiMatrix[button0].addButton(button1, button2, button3);

stringVector.clear();

}

textFile >> text;
}
}

textFile.close();

//For every guiMatrix print the button list to cout.
for(int a = 0; a < totalGUIs; a++)
{
guiMatrix[a].printButtonMatrix();
}
}

正在输入的文本文件如下所示:顶部的数字定义了我要创建多少个 GUI 页面。每个条目的格式如下:页码,位置句柄,名称,效果持续时间,结束

5

0 2 Explore 0 E
0 2 Technologies 0 E
0 2 Buildings 0 E
0 2 Workers 0 E

0 1 Scoop_Water 10 E
0 1 Collect_Water 10 E
0 1 Forage 10 E
0 1 Gather_Twigs 10 E
0 1 Fell_Trees 10 E

1 2 Enter 0 E

1 1 Build_Road 1 E

2 2 Explore 0 E
2 2 Main 0 E
2 2 Buildings 0 E
2 2 Workers 0 E

2 1 Backpack 0 E
2 1 Hand_Cart 0 E

3 2 Explore 0 E
3 2 Main 0 E
3 2 Technologies 0 E
3 2 Workers

3 1 Build_Hut 0 E

4 2 Explore 0 E
4 2 Main 0 E
4 2 Technologies 0 E
4 2 Buildings 0 E


END

最佳答案

.exe 找不到 .png 文件时会抛出错误。 没有规定如果找不到这些文件应该做什么.

通过将相关的 .png 文件移动到与可执行文件相同的文件夹中解决。

关于c++ - 错误 R6010。为什么叫它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19401167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com