C++ 导致访问冲突的fstream构造函数
我读文件有困难。我一直在削减我的程序,直到我剩下的只是Hello World——我仍然会遇到一个“访问冲突”错误 错误发生在fstream f..行上;-它永远不会达到f级。该项目唯一的变化是包括ozz动画头文件和.lib,在Google上很容易找到,以及将运行时库模式设置为/MT而不是/MD。ozz在尝试读取文件时抛出了相同的错误,因此在我留下您所看到的内容之前,会进行剪切。文件存在,尽管我认为这不重要。代码如下:C++ 导致访问冲突的fstream构造函数,c++,file-io,visual-studio-2013,C++,File Io,Visual Studio 2013,我读文件有困难。我一直在削减我的程序,直到我剩下的只是Hello World——我仍然会遇到一个“访问冲突”错误 错误发生在fstream f..行上;-它永远不会达到f级。该项目唯一的变化是包括ozz动画头文件和.lib,在Google上很容易找到,以及将运行时库模式设置为/MT而不是/MD。ozz在尝试读取文件时抛出了相同的错误,因此在我留下您所看到的内容之前,会进行剪切。文件存在,尽管我认为这不重要。代码如下: #pragma once #include <Windows.h>
#pragma once
#include <Windows.h>
#include <fstream>
using namespace std;
int main()
{
fstream f("C:\\Users\\thoma_000\\Desktop\\Limitless\\Bin\\Asset\\skin_example\\A.txt");
if (f.good())
{
OutputDebugString(L"\n\n\nGOOD.\n\n\n");
}
else
{
OutputDebugString(L"\n\n\nBAD.\n\n\n");
}
return 0;
}
我通过最初将项目创建为一个空的win32项目而不是Windows项目来解决这个问题。我已经查看了项目设置,目前无法判断是什么设置导致了问题-但至少我有一个解决方案。请逐字发布整个错误消息,包括位置信息。你是说没有链接Ozz libs也不包括它们的头的代码仍然显示了这个问题吗?我知道这与你的问题无关,但是在源文件中使用pragma是不必要的。你是说fstream f。。。抛出错误?那么,如果你把它和if和else注释掉就可以了?实际错误是什么?将/MD更改为/MT可能不是一个好主意。一个链接到DLL运行时库,另一个链接到静态运行时库。您不希望应用程序的不同部分使用不同的运行库。@TomBurbeck-此时,最好创建一个全新的项目,并将运行库设置为/MT。不要添加、更改或执行任何其他操作。编译/链接您的程序。它跑吗?如果没有,那么您的VisualStudio就坏了。