65,210
社区成员
发帖
与我相关
我的任务
分享#include <iostream>
#include <list>
using std::cout;
using std::endl;
using std::list;
class object
{
public:
object();
object(int v);
object(object &a);
virtual ~object();
int getData();
void setData(int v);
private :
int data;
};
object::object()
{
this->data = 0;
}
object::object(int v)
{
this->data = v;
}
object::object(object &a)
{
this->data = a.getData();
}
object::~object()
{}
int object::getData()
{
return this->data;
}
void object::setData(int v)
{
this->data = v;
}
int main(int argc, char **argv)
{
int array[] = {1,4,2,5,8,4};
list<int> lt(array, array + sizeof(array) / sizeof(int));
list<object*> test(10);
object first(4);
object second(2);
object third(8);
test.push_back(&first);
test.push_back(&second);
test.push_back(&third);
for(list<object*>::iterator iter = test.begin(); iter != test.end(); ++iter)
{
cout << (*iter)->getData() << endl;
}
return 0;
}
//iterator 就相当于指针,用之前必须进行初始化
int main(int argc, char **argv)
{
int array[] = {1,4,2,5,8,4};
list<int> lt(array, array + sizeof(array) / sizeof(int));
// list<object*> test(10);//此处说明定义10个object的指针,并没有赋值
//修改如下
object obj(100);
list<object*>test(10,&obj);
object first(4);
object second(2);
object third(8);
test.push_back(&first);
test.push_back(&second);
test.push_back(&third);
for(list<object*>::iterator iter = test.begin(); iter != test.end(); ++iter)
{
cout << (*iter)->getData() << endl;
}
system("pause");
return 0;
}
#include <iostream>
#include <list>
using namespace std;
class object
{
public:
object();
object(int v);
object(object &a);
virtual ~object();
int getData();
void setData(int v);
private :
int data;
};
object::object()
{
this->data = 0;
}
object::object(int v)
{
this->data = v;
}
object::object(object &a)
{
this->data = a.getData();
}
object::~object()
{}
int object::getData()
{
return this->data;
}
void object::setData(int v)
{
this->data = v;
}
int main(int argc, char **argv)
{
int array[] = {1,4,2,5,8,4};
list<int> lt(array, array + sizeof(array) / sizeof(int));
list<object*> test;//mark
object first(4);
object second(2);
object third(8);
test.push_back(&first);
test.push_back(&second);
test.push_back(&third);
for(list<object*>::iterator iter = test.begin(); iter != test.end(); ++iter)
{
cout << (*iter)->getData() << endl;
}
return 0;
}