これは非常にばかげた質問かもしれませんが、回答を探すために何を書けばよいかさえわかりません。私が付けたタイトルが正しいかどうかさえわかりません。
次のようなコンストラクタがある場合:
CError(const std::string& msg) { showMessage(msg) }
そして、私はそれをこのように呼びたいです...
CError("some message");
...すべて動作しますが、文字列が変数に指定されている場合、「クラス CError のデフォルト コンストラクターが存在しません」というエラーが発生しました。
std::string str = "some message";
CError(str);
このように書くと、うまくいきます:
std::string str = "some message";
CError err(str);
err
しかし、私はこのオブジェクトを必要としません。
コンストラクター自体だけを呼び出せない理由を誰かに説明してもらえますか?
回答ありがとうございます。