This question already has answers here:
StdAfx + Header file - Order of inclusion in MFC application

(2个答案)


3年前关闭。




您好,我在编译和运行程序时遇到问题。我最近刚从code::block切换到Microsoft Visual 2017。

错误:无法启动程序'c:\ users \ myname \ documents \ visual studio 2017 \ Projects \ ConsoleApplication1 \ Debug \ ConsolApplication1.exe'系统找不到指定的文件。
#include <iostream>
#include <math.h>
#include <cstdlib>
#include <cmath>
#include <iomanip>
#include "stdafx.h"
using namespace std;

int main()
{
    cout << "hello";
    return 0;
}

康 Solr :

1> ------开始构建:项目:ConsoleApplication1,配置:调试Win32 ------
1> ConsoleApplication1.cpp
1> c:\ users \ myname \ documents \ Visual Studio 2017 \ projects \ consoleapplication1 \ consoleapplication1 \ consoleapplication1.cpp(13):错误C2065:'cout':未声明的标识符
1>完成的建筑项目“ConsoleApplication1.vcxproj”-失败。
==========构建:0成功,1失败,0最新,跳过0 ==========

最佳答案

由于我不了解的原因,Visual Studio中的编译器将忽略stdafx.h包含内容之外的任何内容。

解决方案:对包括的文件重新排序,将#include "stdafx.h"放在顶部。

替代解决方案:删除#include "stdafx.h"disable precompiled headers

以下内容可能对您有帮助:Purpose of stdafx.h

10-06 11:25