これは、例外に情報を追加したいときによく行うことの例です。
std::stringstream errMsg;
errMsg << "Could not load config file '" << configfile << "'";
throw std::exception(errMsg.str().c_str());
それを行うより良い方法はありますか?
std::stringをとる暗黙のコンストラクタがありconst char*ます
                std::exceptionの子クラス」とのそれぞれのバージョンで使用されているstd::runtime_errorとstd::logic_error。標準で定義されているものとは別に、MSVSのバージョンには、<exception>さらに2つのコンストラクターが含まれ(const char * const &)てい(const char * const &, int)ます。これらは、プライベート変数を設定するために使用されますconst char * _Mywhat。ifの場合_Mywhat != nullptr、what()デフォルトでそれを返します。それに依存するコードはおそらく移植性がありません。
                
std∷exception持つコンストラクターはありませんchar*。