{a} のような式が予期しない暗黙的な変換にならないようにするために、明示的な init-list ctor を使用できますか? そして別の考え:私はそれについて心配する必要がありますか?単純に と書く{a}
よりは間違いである可能性は低くなりますが、a
一方で、暗黙の変換によってオブジェクトを構築していることは、コードからはまだ明確ではない場合があります。
class Foo
{
explicit Foo (std::initializer_list<Bar> ilist) { /*...*/}
};