编译包含vector头文件时候出错!
源程序:
#include<vector>
class iStack {
public:
iStack(){_top = 0;}
iStack( int capacity )
: _stack( capacity ), _top( 0 ) { }
void pop( int &top_value );
void push( int value );
bool full();
bool empty();
void display();
int size();
private:
int _top;
std::vector<int> _stack;
};
#include <iostream>
#include "iStackExcep.h"
#include "istack.h"
using std::cout;
using std::endl;
void iStack::pop( int &top_value )
{
if ( empty() )
throw popOnEmpty();
top_value = _stack[ --_top ];
cout << "iStack::pop(): " << top_value << endl;
}
void iStack::push( int value )
{
cout << "iStack::push( " << value << " )\n";
if ( full() )
throw pushOnFull();
_stack[ _top++ ] = value;
}
bool iStack::full()
{
return _stack.size()==_stack.capacity()? true:false;
}
bool iStack::empty()
{
return _stack.empty();
}
int size()
{
return _stack.size();
}
void display()
{
cout << "(" ;
for( int ix = 0, ix < _stack.size(), ++ix )
cout << _stack[ix] << ",";
cout << "\b)" << endl;
}
g++显示
in file include from /usr/include/c++/4.2/vector:70
from istack.h 1,
from istack.cc 3:
/usr/include/c++/4.2/bits/stl_vector.h expected unqualified-id befor 'namespace'
这个是怎么回事?
#include<vector>
class iStack {
public:
iStack(){_top = 0;}
iStack( int capacity )
: _stack( capacity ), _top( 0 ) { }
void pop( int &top_value );
void push( int value );
bool full();
bool empty();
void display();
int size();
private:
int _top;
std::vector<int> _stack;
};
#include <iostream>
#include "iStackExcep.h"
#include "istack.h"
using std::cout;
using std::endl;
void iStack::pop( int &top_value )
{
if ( empty() )
throw popOnEmpty();
top_value = _stack[ --_top ];
cout << "iStack::pop(): " << top_value << endl;
}
void iStack::push( int value )
{
cout << "iStack::push( " << value << " )\n";
if ( full() )
throw pushOnFull();
_stack[ _top++ ] = value;
}
bool iStack::full()
{
return _stack.size()==_stack.capacity()? true:false;
}
bool iStack::empty()
{
return _stack.empty();
}
int size()
{
return _stack.size();
}
void display()
{
cout << "(" ;
for( int ix = 0, ix < _stack.size(), ++ix )
cout << _stack[ix] << ",";
cout << "\b)" << endl;
}
g++显示
in file include from /usr/include/c++/4.2/vector:70
from istack.h 1,
from istack.cc 3:
/usr/include/c++/4.2/bits/stl_vector.h expected unqualified-id befor 'namespace'
这个是怎么回事?
...全文
相关推荐
C++常用头文件简介及编译错误大全
C++头文件罗列,并具体讲解一些常用头文件的具体内容。详细介绍了C2001到C2099的编译错误
Vector Davinci官方帮助配置使用手册(AutoSAR).pdf
Vector官方帮助文档,配置使用手册。从新建DaVinci工程开始一步一步的讲解如何配置工程;如何编译生成C代码;如何导入CDD、DBC等文件。手册讲解细致,可以说是手把手教学了
详解C++中的vector容器及用迭代器访问vector的方法
使用迭代器iterator可以更方便地解引用和访问成员,当然也包括vector中的元素,本文就来详解C++中的vector容器及用迭代器访问vector的方法,需要的朋友可以参考下
VS2010编译vector错误[源码]
文章详细介绍了在VS2010中使用vector时遇到的编译错误及解决方法。主要问题在于未正确使用命名空间std,导致编译器无法识别vector模板。解决方法包括添加using namespace std;或显式使用std::vector。此外,文章还详细讲解了vector的多种初始化方式,如不带参数的构造函数、push_back方法以及二维数组的初始化。最后,列举了vector的常用操作,如size()、empty()、push_back()、pop_back()、at()、insert()、erase()和clear()等,并推荐了相关学习资源。
C和C++不同文件夹下包含头文件的方法及#include的使用.pdf
。。。


