编译器影响头文件,“使用命名空间std;”?而且运行速度如何?

时间:2012-03-16 01:42:08

标签: visual-c++

搜索常见问题后,没有类似我的问题。 今天早上我使用visual c ++编程。我曾经开始:

#include <iostream>
using namespace std;
int main()
{
    return 0;
}

并没有问题。但是现在,在我重新安装visual c ++之后,它无法工作,并且在编译之后,它将显示错误: d:\ visual c ++ \ vc6en \ vc98 \ include \ ios(9):致命错误C1083:无法打开包含文件:'streambuf':没有这样的文件或目录 执行cl.exe时出错。 但我确信“streambuf.h”存在并且路径是正确的。 所以我开始:

#include <iostream.h>
int main()
{
    return 0;
}

它有效!为什么?这两种方式之间的区别是什么以及它们如何影响事物会有所不同? 还有一个问题。重新安装visual c ++后,它运行程序的速度变得非常慢,甚至是一个非常简单的程序。之前,运行一个程序只需要不超过3秒,但现在,它甚至需要30秒。是什么原因?

我非常想知道这些东西。当你解决我的问题时,我会很感激。

1 个答案:

答案 0 :(得分:0)

Visual C ++ 6因不遵守标准而且通常有错误而臭名昭着。我强烈建议,如果您打算使用Visual C ++,请获取最新版本(Visual C ++ 2010 Express是免费提供的)。您会发现许多现代程序都存在VC6编译器的问题,使用更新版本将鼓励您学习符合C ++标准的现代标准。

<iostream.h>是已弃用的非标准标头,而<iostream>符合标准。有关差异的完整讨论,请参阅here