读书人

vector中如何插入结构体 .

发布时间: 2012-02-20 21:18:24 作者: rapoo

vector中怎么插入结构体 在线等...
#include "stdio.h "

#include <vector>
using namespace std;

struct mdata
{
int num;
int sum;
};
void main()
{
vector <mdata> A;
mdata b,c;
b.num=10;
b.sum=100;
c.num=1;
c.sum=11;
A.insert(A.end(),b);
A.insert(A.end(),c);

vector <int> a;
int i;
for(i=0;i <10;i++)
{
a.insert(a.end(),i);
printf( "%d \n ",a[i]);
}

}
如果是int型的就可以,可结构体就不行;程序虽然不报错,但是A容器中只有第一个插入的结构体,第二个没有。该怎样插入结构体?是否需要在结构体中定义自己的构造和析构函数等?请高手指教!

[解决办法]
#include "stdio.h "

#include <vector>
using namespace std;

struct mdata
{
int num;
int sum;
};
void main()
{
vector <mdata> A;
mdata b,c;
b.num=10;
b.sum=100;
c.num=1;
c.sum=11;
A.push_back(b);
A.push_back(c);
//printf( "%d\n ",)
b=*A.begin();
c=*(A.end()+1);

vector <int> a;
int i;
for(i=0;i <10;i++)
{
a.insert(a.end(),i);
printf( "%d \n ",a[i]);
}

}

你看看,我vc6能啊
[解决办法]
push_back()
木问题的
okokok

读书人网 >C++

热点推荐