当前位置: 代码迷 >> 综合 >> CList
  详细解决方案

CList

热度:33   发布时间:2024-01-03 22:09:32.0

仅仅是个人体会,不一定正确,欢迎交流

CList是一个双向链表

CList<CString, CString&> m_ListProgHistoryName;

CList<ONE_SPLIT_TASK_ITEM, ONE_SPLIT_TASK_ITEM&> m_ListSplitTaskItem;

CList<PPROG_TYPE_ITEM, PPROG_TYPE_ITEM> m_ListProgType;

CList<COne_Frame*, COne_Frame*>  m_aFreeFrame;

其中ONE_SPLIT_TASK_ITEM是一个结构体,PPROG_TYPE_ITEM是指向结构体PROG_TYPE_ITEM的指针,第二个参数加&对CList的成员函数传参数而言是引用传递,而不加就是值传递直接传递对象进去,这就是区别。当然对于指针类型的如PPROG_TYPE_ITEM是无需考虑这个的,直接传递指针就去即可,不需要加&。而对结构或者类加&高效一些。

使用自己定义的类的时候需要重载=操作符,但是发现COne_Frame并有重载,能用,是不是因为使用的是COne_Frame指针的问题,呵呵

对于自己定义的结构体而言,好像不用重载=也可以使用,我用

CList<ONE_SPLIT_TASK_ITEM, ONE_SPLIT_TASK_ITEM&> m_ListSplitTaskItem;实验了一下,发现不重载也可以使用CList

  相关解决方案