メインコンパイルの最初の行はなぜコンパイルされるのですか? は、私が思う一時両方ともが、1つは、あなたが代入演算子を作成しない場合、コンパイラはあなたのための1つを作成しますL値として扱われ、..は一時的な値ですか、そうでないのですか?
class complex
{
public:
complex() : r(0),i(0) {}
complex(double r_, double i_) : r(r_), i(i_)
{
}
private:
double r;
double i;
};
int main()
{
complex(2,2) = complex(1,2);
char() = char(2);
}
はい!私はこれが私が行方不明だった引数だと思う...演算子=は右辺値で呼び出すことができますが、 "代入"は右辺値で行うことはできません – mhk