linux下的g++编译c++问题,请高手解决
#include<iostream>#include<vector>usingstd::cout;usingstd::endl;usingstd::vector;usin...
#include<iostream>
#include<vector>
using std::cout;
using std::endl;
using std::vector;
using std::vector<int>::iterator;
int main()
{
vector<int> container;
for(int i=1;i<=4;i++)
container.push_back(i);
cout<<"here is what is in the container:\n";
iterator p;
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
cout<<"setting entries to 0:\n";
for(p=container.begin();p!=container.end();p++)
*p=0;
cout<<"contanier now contains:\n";
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
return 0;
}
此代码在linux下编译不成功,但是用vc++却可以编译通过。
在linux下编译时总是出现
error:'std::vector<int ,std::allocator<int> >'is not a namespace 展开
#include<vector>
using std::cout;
using std::endl;
using std::vector;
using std::vector<int>::iterator;
int main()
{
vector<int> container;
for(int i=1;i<=4;i++)
container.push_back(i);
cout<<"here is what is in the container:\n";
iterator p;
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
cout<<"setting entries to 0:\n";
for(p=container.begin();p!=container.end();p++)
*p=0;
cout<<"contanier now contains:\n";
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
return 0;
}
此代码在linux下编译不成功,但是用vc++却可以编译通过。
在linux下编译时总是出现
error:'std::vector<int ,std::allocator<int> >'is not a namespace 展开
4个回答
展开全部
上述代码中出现的问题是:
using std::vector<int>::iterator;
这是因为在头文件vector中根本就没有一个"vector<int>::iterator"的类型,
只有:
template <typename T>
vector<T>::iterator;
所以建议你将该行去掉吧!
using std::vector<int>::iterator;
这是因为在头文件vector中根本就没有一个"vector<int>::iterator"的类型,
只有:
template <typename T>
vector<T>::iterator;
所以建议你将该行去掉吧!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是一个g++命令用法问题,用vc++可以编译通过,g++也应该可以,但是你g++后面加的命令有些不支持吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#include<vector>
using std::cout;
using std::endl;
using std::vector;
int main()
{
vector<int> container;
for(int i=1;i<=4;i++)
container.push_back(i);
cout<<"here is what is in the container:\n";
vector<int>::iterator p;
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
cout<<"setting entries to 0:\n";
for(p=container.begin();p!=container.end();p++)
*p=0;
cout<<"contanier now contains:\n";
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
return 0;
}
#include<vector>
using std::cout;
using std::endl;
using std::vector;
int main()
{
vector<int> container;
for(int i=1;i<=4;i++)
container.push_back(i);
cout<<"here is what is in the container:\n";
vector<int>::iterator p;
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
cout<<"setting entries to 0:\n";
for(p=container.begin();p!=container.end();p++)
*p=0;
cout<<"contanier now contains:\n";
for(p=container.begin();p!=container.end();p++)
cout<<*p<<" ";
cout<<endl;
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询