スマートポインタ

参照カウントにもとづくスマートポインタです. 参照カウントが$0$になったオブジェクトのメモリを自動的に解放するためにユーザが手動でdeleteを実行する手間が省け,メモリリークの危険が低減できます.

参照カウントクラスはUTRefCountです. SpringheadのほとんどのクラスはUTRefCountを継承しています. スマートポインタはテンプレートクラスUTRefです. 以下に例を示します.

class A : public UTRefCount{};
UTRef<A> a = new A();
// no need to delete a