以下代码from Michael Dunns series on WTL无法编译
template <bool t_bVertical = true>
class CMySplitterWindowT : public CSplitterWindowImpl<CMySplitterWindowT<t_bVertical>, t_bVertical>
第一行错误是:
'WTL :: CSplitterWindowImpl':'t_bVertical'不是参数'TBase'的有效模板类型参数
最佳答案
WTL在8到9之间更改
需要调用基本构造函数来设置成员变量
template <bool t_bVertical = true>
class CMySplitterWindowT : public CSplitterWindowImpl<CMySplitterWindowT<t_bVertical> >
{
public:
DECLARE_WND_CLASS_EX(_T("My_SplitterWindow"), CS_DBLCLKS, COLOR_WINDOW)
CMySplitterWindowT() : m_bPatternBar(false), CSplitterWindowImpl<CMySplitterWindowT<t_bVertical> >(t_bVertical)
{ }
从自述文件中-
“拆分器窗口:
•将方向从模板参数更改为数据成员,以减少内存使用”
关于c++ - 教程无法编译,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42065560/