#include<iostream>
#include<list>
#include<string>
using namespace std;class Node
{
public:
int a;
int b;
};void main()
{
list<Node>l;
list<Node>::iterator p;
Node n;
l.push_front(n);
p=l.begin();
*p->a=1;
}出错提示:error C2100: illegal indirection请问list里面不能装类的对象吗?
装入的话怎么访问其中节点的成员函数和变量?
#include<list>
#include<string>
using namespace std;class Node
{
public:
int a;
int b;
};void main()
{
list<Node>l;
list<Node>::iterator p;
Node n;
l.push_front(n);
p=l.begin();
*p->a=1;
}出错提示:error C2100: illegal indirection请问list里面不能装类的对象吗?
装入的话怎么访问其中节点的成员函数和变量?
解决方案 »
- Cstring 字符串转化成GUID(在VC6.0下)
- MFC两个不同窗体类之间如何传递数据
- EditBox输入,然后找出这个按键是哪个键盘输入的
- 请问关于return的过程。
- CTrackLookButton类的用法
- 绘制快速走动的仪表时,怎样降低CPU占用率??有好方法的进来讨论一下
- 如何动态改变工具栏按钮提示?
- 向modal窗体发送自定义消息异常
- 高分求教:mpeg1的头文件格式.修复过mpeg1的高手来领分!
- 如何在VC中建立与ADO的连接
- extern CList<STRU-STBOOK *, STRU-STBOOK *> g-stbooklist这语句是什么意思?
- 高分求助:谁能提供《Visual C++.NET 技术内幕(英文版.第6版)》书上范例的源程序
#include<list>
#include<string>
using namespace std;class Node
{
public:
int a;
int b;
};void main()
{
list<Node> l;//here
list<Node>::iterator p;
Node n;
l.push_front(n);
p=l.begin();
p->a=1; //here
}改了下,试试
问题在这里,list中并没有提供拷贝构造函数!所以用这种方式不对!
#include <list>
#include <conio.h>using namespace std;
class SomeClass
{
public:
SomeClass(){date=0;}
SomeClass(int x){date=x;}
//SomeClass(const SomeClass& sc){date=sc.date;} void SetDate(int x){date=x;}
void Display(){std::cout<<date<<"\n";}
~SomeClass(){}
private:
int date;
};void main()
{
SomeClass node1(1),node2(2),node3(3);
list<SomeClass> mylist;
list<SomeClass>::iterator myit;
mylist.push_back(node1);
//mylist.push_back(&node2);
//mylist.push_back(&node3);
myit=mylist.begin();
myit->Display(); getch();
}