簡體   English   中英

C++ 編譯錯誤:'pair' 未命名類型

[英]C++ compilation error: ‘pair’ does not name a type

我正在嘗試通過 g++ 編譯器編譯非常簡單的 c++ 程序。

//main.cpp 

#include <stdio.h>

using namespace std;

typedef pair<int,int> pii;

int main(int argc, char *argv[])
{
    printf("Hi");
    return 0;
}

但是我收到編譯錯誤:“pair”沒有命名類型

編譯行:g++ main.cpp -o main.out 操作系統:Ubuntu 16.04 lts g++:gcc version 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;
}

你知道為什么會這樣嗎?

我的錯,答案很簡單:)

1) 對於使用pair我應該包括<utility>

2) <iostream>某處包含<utility> ,這就是為什么添加它后程序編譯成功的原因:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM