std :: bitset :: at()在VS2015中消失

Tom*_*Tom 1 c++ visual-studio-2015

我曾经使用bitset::at(x)过健壮的运行时检查版本来检查是否bitset<>设置了a中的任何位.但在VS2015中,我收到此错误:

std::bitset<6> bTestFlag;
int b = bTestFlag.at(3); // Error C2039 'at': is not a member of 'std::bitset<6>'
Run Code Online (Sandbox Code Playgroud)

为什么它在VS2015中消失了?

Bar*_*rry 5

你可能正在寻找std::bitset::test().这是检查一个位的正确成员函数,但std::out_of_range如果提供的索引不是有效位置则抛出.从来没有at().