OR'd flags дает вам фактическое числовое значение, которое может быть прочитано и преобразовано в это значение с помощью stringstream
.
template<typename T>
T flagValue(const std::string& flag_str)
{
T value;
std::stringstream ss;
ss << hex << flag_str;
ss >> value;
return value;
}
Но вам нужно знать точное значение OR'd флагов,запишите его куда-нибудь и присвойте options.c_flag
с результатом flagValue.
Например flagValue<unsigned int>("1a")
.