Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
クラスがある場合:
class classA { public: int z = 5; };
RAII を書いていることは理解してclassA Aobjectいますが、グローバル ポインタを宣言したい場合はどうすればよいですか?
classA Aobject
classA *Aobject; int main() { Aobject = new classA; //not RAII cout << Aobject->z << endl; return 1; }
オブジェクトを宣言したいが、すぐに初期化したくないということだと思います。おそらく、適切に構築するために必要なすべてのパラメーターがまだないためです。あれは正しいですか?スマートポインタを使用してください。
#include <memory> #include <iostream> std::unique_ptr<classA> Aobject; int main() { Aobject.reset(new classA); cout << Aobject->z << endl; return 1; }