g ++コンパイラで非常に単純なC++プログラムをコンパイルしようとしています。C++コンパイルエラー: 'pair'は型名を指定していません
//main.cpp
#include <stdio.h>
using namespace std;
typedef pair<int,int> pii;
int main(int argc, char *argv[])
{
printf("Hi");
return 0;
}
しかし、私はコンパイルエラーを取得しています: 'ペア' タイプに
コンパイル行に名前を付けていません:G ++ main.cppに-o main.out OS:Ubuntuの16.04 LTS G ++:gccのバージョンを5.4.0 20160609(Ubuntuの5.4.0-6ubuntu1〜16.04.2)
私はちょうど#include<iostrem>
プログラムを追加した場合はコンパイルし、正常に実行された:)
#include <stdio.h>
#include<iostream>
using namespace std;
typedef pair<int,int> pii;
int main(int argc, char *argv[])
{
printf("Hi");
return 0;
}
あなたは知っています、なぜこれが起こりますか?
あなたは、のためにある何のヘッダー知っていますか? – tkausl
1.適切なヘッダーファイルを含める必要があります。2.完全に['namespace std;'が使用されていることを忘れる必要があります](http://stackoverflow.com/questions/1452721/why-is-using -namespace-std-considered-bad-practice)を指定します。 –
すべてのC++標準ヘッダーには他のヘッダーを含めることができるため、ランダムヘッダーが使用できます。最も良い方法は、['std :: pair'](http://en.cppreference.com/w/cpp/utility/pair)が宣言されるはずの' 'ヘッダを含めることです。 –