Рассмотрим следующий код -
#include <variant>
#include <string>
int p(std::variant<bool, std::string> v) {
return v.index();
}
int main() {
return p("ad");
}
вместо выбора std::string
, p будет создан с вариантом, содержащим bool
(я хочу std::string
), хорошо, это можно исправить с помощью явного указания std::string
но это слишком много работы ?, я пытался обеспечить различные перегрузки, но, похоже, это не сработало.