例如:
我自定义了一个class A, 使用容器list,生成一个 list<A>. 请问如何使用
push_back(); push_front() 等方法呀?
例如:
我自定义了一个class A, 使用容器list,生成一个 list<A>. 请问如何使用
push_back(); push_front() 等方法呀?
你定义的对象名再加函数名,例如:
list<A> live41;
live41.push_back(); live41.push_front();
不好意思用了live41
没关系,不好意思的系我,是我导致你误会了
push_back(element),push_front(element),原型是带参数的
比如我的class A 带多成员变量
class A{
int in; char ch; float fl;
public: A(){ //init...}
}
live 41.push_back(elements) 参数elements 该怎样写呀?
我的意思是将一个class 的对象装入容器 list 里
实际上这只是个特例,我想说的是如果容器的对象不是单一的类型如int string double 这些 。
而是一些稍微复杂的class,我们如何可以操作(如修改)装在容器里的class的成员变量的值??
list<int> i;
i.push_back(5);
i.push_back(10);
i.sort();
for(list<int>::iterator iter = i.begin(); iter != i.end(); ++iter )
cout<<*iter<<endl;
//////////////////print.h
#include <iostream>
#include <vector>
using namespace std;
class Text{
int a;
int b;
public:
void initText( int aa , int bb){a=aa; b=bb;}
};
/////////////////////pirnt.cpp
#include "print.h"
using namespace std;
main(){
Text tex ; tex.initText(1,24); vector<Text> temp; temp.push_back(tex);
}
我把tex装进容器里面,但 Text 不像int ,Text 的结构复杂了点,我想问的是把一个复杂的类型装入容器里,怎样修改
和输出里面的成员。
修改的话,很简单
vecot<Text> temp;
temp.push_back(t1);
temp[0]=t2;
...
怎么输出?你要怎么输出?:D输出可能性太多了,你不说要求,我怎么知道怎么满足?:p
temp.push_back(t1);
temp[0]=t2;
这样做等于是整体的翻新吧, 输出就是例如 temp[0]=t2;int xxxx=(temp[0] 里的 t2.a)
老大,什么叫做整体的翻新?
我不知道你遵循什么方法在学习,但是建议你循序渐进。