【问题标题】:Tutorial does not compile教程不编译
【发布时间】:2023-04-08 17:17:01
【问题描述】:

以下代码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' 的有效模板类型参数

【问题讨论】:

    标签: c++ wtl


    【解决方案1】:

    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)
        { }
    

    来自自述文件 -

    "分割窗口:

    •将模板参数的方向更改为数据成员以减少内存使用"

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多