#include <iostream>
enum IsOptionAEnum
{
IsOptionA_YES,
IsOptionA_NO
};
enum IsOptionBEnum
{
IsOptionB_YES,
IsOptionB_NO
};
void TestFunc(IsOptionAEnum optionA, IsOptionBEnum optionB)
{
if (optionA == IsOptionA_YES || optionA == IsOptionB_YES) // typo
{
// ...
}
//if (optionA == IsOptionA_YES || optionB == IsOptionB_YES) // correct one
//{
//}
}
Question>optionA
是 typeIsOptionAEnum
并且没有IsOptionB_YES
. 为什么VS2010的编译器没有发现这个错误?
如果是编译器找不到错误的情况,有没有办法可以强制执行此限制,以便编译器可以找到错误?