导致访问冲突的 fstream 构造函数

fstream constructor causing access violation

本文关键字:fstream 构造函数 访问冲突      更新时间:2023-10-16

我在读取文件时遇到问题。我已经把我的程序越来越少,直到我只剩下 Hello World - 我仍然收到"访问违规"的错误。

错误发生在 fstream f(..) 行上;- 它永远不会达到 f.good()。这个项目的唯一变化是包括ozz-animation头文件和.lib(在Google上很容易找到),以及将运行时库模式设置为/MT而不是/MD。Ozz 在尝试读取文件时抛出相同的错误(因此减少,直到我只剩下你所看到的)。该文件存在,尽管我认为这无关紧要。代码如下:

#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"nnnGOOD.nnn");
  }
  else
  {
    OutputDebugString(L"nnnBAD.nnn");
  }
  return 0;
}

我设法通过将项目最初创建为空的 win32 项目而不是 Windows 项目来解决此问题。我已经完成了项目设置,目前无法判断导致问题的设置-但至少我有一个解决方案。