81

我有一个 C++ 程序:

测试.cpp

#include<iostream>

int main()
{
    char t = 'f';
    char *t1;
    char **t2;
    cout<<t;    //this causes an error, cout was not declared in this scope
    return 0;
}

我得到错误

'cout' 未在此范围内声明

为什么?

4

2 回答 2

131

将以下代码放在前面int main()

using namespace std;

而且您将能够使用cout.

例如:

#include<iostream>
using namespace std;
int main(){
    char t = 'f';
    char *t1;
    char **t2;
    cout<<t;        
    return 0;
}

现在花点时间阅读一下 cout 是什么以及这里发生了什么:http ://www.cplusplus.com/reference/iostream/cout/


此外,虽然它可以快速完成并且有效,但这并不是一个using namespace std;在代码顶部简单添加的好建议。有关详细的正确方法,请阅读此相关 SO 问题的答案。

于 2013-03-03T14:08:35.477 回答
43

使用std::cout, 因为cout是在命名空间中定义的std。或者,添加using std::cout;指令。

于 2013-03-03T12:47:29.887 回答