Foo f1 = Foo(); // (1) Ok
Foo f2 = Foo; // (2) Compiler error
Foo *p1 = new Foo(); // (3) Ok
Foo *p2 = new Foo; // (4) Ok. Why??
ポインターを初期化する方法が 2 つあるのはなぜだろうと思っていました。少し矛盾しているように見えます。何らかの論理的な理由がありますか? もしそうなら、それは何ですか? それとも、ある種の遺産ですか?もしそうなら、そのような表記の由来は何ですか?