我是一個新手或新手,如果你喜歡這種方式在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;
}
非常感謝這麼多! – Rojee
實際上我總是對這是否是必需的感到困惑。使用我的編譯器(在OS X上是鏗鏘3.1),我只能使用'iostream'而不是'string'。這是否僅僅是因爲一些C++庫包含來自'iostream'的'string'? – Xymostech
@Xymostech是的,但不要指望它,只要編譯器對標準庫的實現更新,它就會改變。始終包含您使用的內容,不要依賴隱式包含。其實這適用於所有圖書館/標題,不僅僅是標準圖書館。 – KillianDS