C++ 为什么是位集';s构造函数的参数为string::charT zero,string::charT one) bitset::bitset(常量string&str,string::size\u type str\u idx,string::size\u type str\u num,string::charT zero) 比特集::比特集(常量字符串&str,字符串::size\u类型str\u idx,字符串::size\u类型str\u num,字符串::图表零,字符串::图表一)

C++ 为什么是位集';s构造函数的参数为string::charT zero,string::charT one) bitset::bitset(常量string&str,string::size\u type str\u idx,string::size\u type str\u num,string::charT zero) 比特集::比特集(常量字符串&str,字符串::size\u类型str\u idx,字符串::size\u类型str\u num,字符串::图表零,字符串::图表一),c++,C++,有人说:如果其中一个字符既不是'0'/0也不是'1'/1,则抛出无效的_参数。 但是我可以将'1'/zero或'0'/one设置为参数,并且没有抛出。这是为了允许您从诸如“xoxxx”之类的字符串构造一个位集,其中位值恰好没有表示为'0'和'1'。对于作为零和一参数传递的内容没有任何约束 但是,如果字符串包含与所选零和一值不匹配的任何字符,则会出现异常,例如位集(“xoA”,3,'o','x')将因“A”而失败 请参见它允许您从一个字符串(如“xoxxox”)构造一个位集,其中位值恰好不表示为“

有人说:如果其中一个字符既不是'0'/0也不是'1'/1,则抛出无效的_参数。
但是我可以将'1'/zero或'0'/one设置为参数,并且没有抛出。

这是为了允许您从诸如“xoxxx”之类的字符串构造一个
位集,其中位值恰好没有表示为'0'和'1'。对于作为零和一参数传递的内容没有任何约束

但是,如果字符串包含与所选零和一值不匹配的任何字符,则会出现异常,例如
位集(“xoA”,3,'o','x')
将因“A”而失败


请参见

它允许您从一个字符串(如“xoxxox”)构造一个
位集
,其中位值恰好不表示为“0”和“1”。对于作为零和一参数传递的内容没有任何约束

但是,如果字符串包含与所选零和一值不匹配的任何字符,则会出现异常,例如
位集(“xoA”,3,'o','x')
将因“A”而失败

bitset<bits>::bitset (const string& str,string::size_type str_idx,string::size_type str_num,string::charT zero)
bitset<bits>::bitset (const string& str,string::size_type str_idx, string::size_type str_num,string::charT zero,string::charT one)