今日、次のようなコードをコンパイルしようとしました。
class example
{
public:
example(const char (&in_data)[6]);
};
example foo()
{
return "ABCDE";
}
GCC では、戻り行に example への変換がないことを訴えていました。次のようなコードを使用して、他の場所でタイプ example のオブジェクトを初期化できました
example bar("ABCDE");
大丈夫です。VS2010でコンパイルした場合も、これはすべて正常に機能しました。
さて、私の質問は、これはうまくいったはずですか、それともこれはビジュアルスタジオのコンパイラ拡張機能ですか? 明示的でないコンストラクターのために、これは機能するはずだと私には思えます...
仕事をしていないので正確なエラー メッセージはわかりませんが、本当に困っています。