struct S {
S() {}
S (const S &) = delete;
};
void f1 (S s) {}
void f2 (S &s) {}
int main() {
S s;
f2(s);
}
は削除されているため、宣言されたときに引数が渡されるため、S(S &s)
使用するとエラーがスローされないのはなぜですか? 使用するとエラーになります。私は削除された関数の定義を見てきましたが、これはエラーになると思いましたが、そうではありません。なんで?f2
S &s
f1(s)