在 Visual Studio IDE 中标记了切换 bool 值

问题描述

以这个简单的代码为例:

void CChristianLifeMinistryEditorDlg::OnoptionsAddTimetoConcludingComments()
{
    BOOL bAddTime = CChristianLifeMinistryUtils::AddRemainingTimetoConcludingComments();
    bAddTime = !bAddTime;
    CChristianLifeMinistryUtils::SetAddRemainingTimetoConcludingComments(bAddTime);

    UpdateMenuGUI();
    SetModified(true);
}

!bAddTime标记

enter image description here

它说:

使用逻辑“!”当按位 '~' 可能是有意的。

我之前使用过这种技术来切换布尔值,它似乎可以正确运行。那么为什么会出现警告呢?它与视觉辅助无关。

解决方法

简单的改变

BOOL bAddTime = ...

bool bAddTime = ...

我猜静态代码分析会因为 BOOLint 的类型别名而感到困惑。