我使用输入/输出流库吗?

时间:2013-01-06 17:50:38

标签: c++ iostream

如果您喜欢C ++编程,那我就是新手或者菜鸟我想尝试使用std::,因为有人告诉我这是一个好习惯而不是放入using namespace std;,因为它污染全局命名空间。我不确定为什么std::cin >> name;在下面的代码中产生错误no operator '>>' matches these operands以下是完整的源代码。

#include "stdafx.h"
#include <ios>
#include <iostream>

int _tmain(int argc, _TCHAR* argv[])
{
    int x, y;
    std::string name;

    std::cin >> name;
    std::cin >> x;

    return 0;
}

2 个答案:

答案 0 :(得分:5)

你忘了这个:

#include<string>

您正在使用上面标题中定义的std::string。你需要加入它。

如果您使用标准库中的任何内容,无论是容器还是算法,请确保已包含定义它们的相应标头。标准库有很多头文件,特别是对于容器。作为一般规则,每个容器都在其自己的头文件中定义。

答案 1 :(得分:2)

你忘了

#include <string>

另外

#include <ios>

没有必要。