我正在使用 Visual Studio 2022。 我正在尝试创建一个可以像着色器一样读取文件的程序。它可以让我不把每一段代码都放在同一个文件中......
所以,澄清一下我想做什么:
为此,我尝试使用“string”、“stringstream”…… 我设法做到了:
std::string readShader(const char* path){
std::string shader;
std::ifstream file;
file.open(path, std::ios::in);
if (file.is_open()) {
std::stringstream code;
code << file.rdbuf();
shader = code.str();
file.close();
}
return shader;
}
我不确定这个问题,但我无法构建着色器。
事实上,我试图通过读取文件来打印我得到的... 有时我得到了着色器,它很棒但是......我也得到了那种东西:
ázý▓l☻
所以,这肯定是问题所在。
我的意思是,那是什么:
ázý▓l☻
?
为什么我会这样?
那不是我文件的内容!
我认为这是因为我的函数“返回”了一些最终被删除的东西(或其中的一部分......)。
你能解释一下这是什么问题吗?如何解决?还有为什么我得到那个?