求助Mfc高手
我用vs2010写了如下代码:
struct BOOK{
CString BookName;
CString BookId;
CString Author;
short BookNum;
double BookValue;
} ;
typedef CArray<BOOK,BOOK&> LISTBOOK;
结果编译是出现错误提示:
error C2248: “CObject::CObject”: 无法访问 private 成员(在“CObject”类中声明)
1> g:\workspace\visual studio 2010\vc\atlmfc\include\afx.h(534) : 参见“CObject::CObject”的声明
1> g:\workspace\visual studio 2010\vc\atlmfc\include\afx.h(509) : 参见“CObject”的声明
1> 此诊断出现在编译器生成的函数“CArray<TYPE,ARG_TYPE>::CArray(const CArray<TYPE,ARG_TYPE> &)”中
1> with
1> [
1> TYPE=BOOK,
1> ARG_TYPE=BOOK &
1> ]
我重新定义后:
typedef CArray<BOOK,BOOK&>& LISTBOOK;
可以通过编译,却要求必须在成语初始化表中初始化类中的一个私有的LISTBOOK成员,为什么?是因为是const变量吗?
有解决不要在初始化列表中初始化的方法吗?