函数“隐藏”和OnSize

时间:2018-07-02 18:22:06

标签: mfc visual-studio-2017 member-hiding

我真的不明白这一点。使用OnSize函数:

afx_msg void OnSize(
    UINT nType,  
    int cx,  
    int cy);

因此,它不是虚拟的。因此,我们在派生类中使用ClassWizard制作了自己的方法。例如:

void CCreateReportDlg::OnSize(UINT nType, int cx, int cy)
{
    CResizingDialog::OnSize(nType, cx, cy);

    if (m_Grid.GetSafeHwnd() != nullptr)
        m_Grid.ExpandColumnsToFit();
}

您通过最新的代码分析来运行该程序,它会发出有关隐藏非虚拟函数的警告。但是我们正在调用基本类函数。这是标准的MFC样板代码(这是正确的术语吗?)。

因此它不是隐藏的。当然,只有在未调用基类实现的情况下,才应该标记此警告?

0 个答案:

没有答案