1

基本クラス「Actor」と派生クラス「Outlaw」があります

「無法者」は独自の基本クラスであり、コードを使用して簡単にポインターを作成できました。

Outlaw * outlaw = new Outlaw();

「無法者」は基本タイプ「俳優」を継承するようになりました

Outlaw クラスへのポインターを作成する新しいコードをどのように作成すればよいでしょうか? 私は C++ の初心者ですが、C の経験は豊富です。

4

1 に答える 1

2

まったく同じです。

しかし、まず第一に、動的に割り当てられたインスタンスは必要ないかもしれません。変数が必要なだけかもしれません。その場合、変数を宣言するだけです。これは、C++ の他のすべての速度のために、動的割り当てはコストがかかるためです (すべてが相対的であり、動的割り当ては通常の変数宣言に比べてコストがかかります)。例えば、

Outlaw outlaw;  // That's it!

動的な割り当てが必要な場合は、ポインタをそのまま保存しないでください。

std::shared_ptraまたは a のように、すぐにスマート ポインターに配置しますstd::unique_ptr

std::unique_ptr<Outlaw> outlaw( new Outlaw() );

前述のスマート ポインター クラスを使用するには、単純に<memory>.

于 2012-08-19T02:30:23.317 に答える