引用头文件#include <queue>出错

在工程头文件中引用头文件 #include <queue> 莫名奇妙出错,其原因很可能是由于头文件引用问题。

include/c++/4.7.1/bits/stl_vector.h:1308:40: error: expected unqualified-id before ‘(’ token
/lib/gcc/arm-linux-gnueabihf/4.7.1/../../../../arm-linux-gnueabihf/include/c++/4.7.1/vector:66:0,
                 from /lib/gcc/arm-linux-gnueabihf/4.7.1/../../../../arm-linux-gnueabihf/include/c++/4.7.1/queue:62,
                 from mediaserver/videosendsession.h:13,
                 from mediaserver/mediaserver.h:12,
                 from mediaserver/controlcenter.h:14,
                 from mediaserver/main.cpp:8:
/lib/gcc/arm-linux-gnueabihf/4.7.1/../../../../arm-linux-gnueabihf/include/c++/4.7.1/bits/stl_bvector.h: In member function ‘std::vector<bool, _Alloc>::size_type std::vector<bool, _Alloc>::_M_check_len(std::vector<bool, _Alloc>::size_type, const char*) const’:
/lib/gcc/arm-linux-gnueabihf/4.7.1/../../../../arm-linux-gnueabihf/include/c++/4.7.1/bits/stl_bvector.h:1051:45: error: expected unqualified-id before ‘(’ token

如上所示,一串吓死人的错误尝试在头文件引用前加入宏定义

#ifdef max
   #undef max
#endif
#ifdef min
   #undef min
#endif
时间: 2024-07-28 16:19:36

引用头文件#include <queue>出错的相关文章

C语言学习笔记(2):引用头文件所使用的符号区别

C语言引用头文件使用的符号有两种,以头文件stdio.h为例: (1)#include <stdio.h> (2)#include “stdio.h” 这两种引用方式是存在不同的. 第一种引用方式,编译器仅在标准库头文件中进行匹配: 第二种引用方式,编译器先在工程目录下进行匹配,如果没有,再到标准库头文件中查找. 这里进行了测试,应用VC++6.0,新建文件,首先是主文件Test.c: #include <child.h> void main() { Test(); } 然后,为了

C++预编译头文件(#include &quot;stdafx.h&quot;)

来源:http://blog.sina.com.cn/s/blog_4ac766c00100qsbd.html http://blog.csdn.net/txh0001/article/details/7031058 作为一个C++菜鸟,在预编译头文件(#include "stdafx.h")上纠结了很久,今天打算彻底弄明白它. 1.预编译头文件的概念 所谓的预编译头文件,其实我们很熟悉的,这里的头文件(Microsoft Visual C++中)一般的说就是我们常见的stdafx.h

头文件相互包含出错问题解决

今天写程序遇到了一个问题,花了好几个小时各种找资料都没有解决,终于皇天不负有心人还是让我给把它kill 掉了.什么问题呢?那就是头文件相互包含出错(当然之前我并不知道是这个原因),先来看代码: Test1.h #include "cocos2d.h" #include "Test2.h" class Test1 : public Layer {     ----     Test2 *test2; }; Test2.h #include "cocos2d.

万能头文件#include&lt;bits/stdc++.h&gt;

最近在打cf时赛后翻阅别人的代码总是会发现一个陌生而奇怪的头文件#include<bits/stdc++.h> 奇怪之处就在于基本上所有的代码只要用了这个头文件就不再写其他头文件了. 百度过后仿佛打开了新世界的大门,头文件居然还可以这样用!!! #include<bits/stdc++.h>包含了目前c++所包含的所有头文件!!!! 从此开启开挂般的人生啊!! 现在再看下面这一堆乱七八糟的头文件显得莫名的冗杂: 1 #include <iostream> 2 #incl

code::blocks配置头文件#include&lt;bits/stdc++.h&gt;

万用头文件#include<bits/stdc++.h>,包含了<queue>,<vector>,<string>,<algorithm>,<iostream>等等各个竞赛中常用或不常用的头文件,可谓省时省力,竞速必备.如今已被大部分oj所支持.面试时大部分的判题系统也亲测可用.但有的编译器却不能够使用这个头文件.本文以code::blocks为例,教大家配置此头文件 1.寻找code::blocks的gnu gcc编译环境 sett

【酷熊科技】工作积累 ----------- Unity3D / c 语言 使用 Stringbuilder 引用头文件 using System.Text

使用 StringBuilder Unity3D / c 语言 使用 Stringbuilder 引用头文件 using System.Text 简述StringBuilder和String的区别? String是字符串常量.  StringBuffer是字符串变量 ,线程安全. StringBuilder是字符串变量,线程不安全.  String类型是个不可变的对象,当每次对String进行改变时都需要生成一个新的String对象,然后将指针指向一个新的对象,如果在一个循环里面,不断的改变一个

头文件---#include&lt;***.h&gt;和#include&quot;***.h&quot;的区别

采用"< >"方式进行包含的头文件表示让编译器在编译器的预设标准路径下去搜索相应的头文件,如果找不到则报错. 例如:VS的安装目录\Microsoft Visual Studio 9.0\VC\include下面就包含了标准库的头文件. 第二种方式表示先在工程所在路径下搜索,如果失败,再到系统标准路径下搜索. 所以,特别要注意的是,如果是标准库头文件,那么既可以采用<>的方式,又可以采用" "的方式,而用户自定义的头文件只能采用"

C++头文件#include&lt;bits/stdc++.h&gt;

一句话的事,直截了当——#include<bits/stdc++.h>包含C++的所有头文件 参考网站(点击):http://www.tuicool.com/articles/m6neUj #include<bits/stdc++.h>这个头文件包含以下等等C++中包含的所有头文件: #include <iostream>        #include <cstdio>        #include <fstream>        #inc

C++----练习--引用头文件

1.创建头文件和源文件 touch /tmp/tools.h touch /tmp/main.cpp 2.各文件的内容如下: tools.h #include<iostream> void print_hello_world() { std::cout<<"hello world ..."<<std::endl; } main.cpp #include<iostream> #include<cstdlib> #include