11
なぜこれをコンパイルしません:
戻り値の型としてstring
に問題がありますか?constexprを返す関数はコンパイルされません
constexpr std::string fnc()
{
return std::string("Yaba");
}
なぜこれをコンパイルしません:
戻り値の型としてstring
に問題がありますか?constexprを返す関数はコンパイルされません
constexpr std::string fnc()
{
return std::string("Yaba");
}
constexpr
ないchar
へのポインタを取るstd::string
のコンストラクタ。 constexpr
関数では、constexpr
の関数しか使用できません。
ありがとうございました。以前は分かりませんでした。 – smallB
+1であり、そのコンストラクタが 'constexpr 'になることができない理由は、コンパイル時には実行できない副作用(つまり割り当て)があることです。 –
しかし、これは(この特定の例)ビットが馬鹿だとは思わない?文字列リテラルはconstなので、私はstringのctorをconstexprにして、将来このような構造体を許可するべきだと考えます。 – smallB