我正在制作这个小文字RPG游戏,我想将此ascii显示为死亡屏幕。我已经创建了一个c ++文件(我发现代码在线,我不想把它放在主代码中,只是因为它太长了,无论什么时候你死了,它会读取一个.txt文件ascii)我需要一种方法来运行它时从主cpp文件执行它。有办法吗? 我在网上搜索过,但我无法理解的是什么。
这是ascii的代码,如果它有帮助:
#include <iostream>
#include <fstream>
#include <string>
std::string getFileContents (std::ifstream&); /*Gets filecontents*/
int main(int argc, char *argv[])
{
std::ifstream Reader ("ded.txt"); //Open file
std::string Art = getFileContents (Reader); //Get file
std::cout << Art << std::endl; //Print it to the screen
Reader.close (); //Close file
return 0;
}
std::string getFileContents (std::ifstream& File)
{
std::string Lines = ""; //All lines
if (File) //Check if everything is good
{
while (File.good ())
{
std::string TempLine; //Temp line
std::getline (File , TempLine); //Get temp line
TempLine += "\n"; //Add newline character
Lines += TempLine; //Add newline
}
return Lines;
}
else //Return error
{
return "ERROR File does not exist.";
}
}
答案 0 :(得分:1)
无需制作新程序在屏幕上打印...
这是一个简单的原因,它实际上会在不同的窗口打印出来,这不是你想要的,对吗?
您的另一个误解是您没有执行.cpp
文件。 .cpp
个文件包含为了执行它们而必须编译的源代码。而且这不是C ++中的工作原理。
所以,对解决方案。
在您的程序代码中创建一个新函数,假设为PrintDeathScreen
。你有两个选择。像你一样从文件中读取ASCII(但我不是真的推荐它)或将其硬编码到变量中,然后只需在屏幕上打印它。这样可以免除打开和读取文件的麻烦。