私はRAIIクラスを持っています:
template<typename T>
class RAII
{
public:
explicit RAII( T* p = 0 ): p_(p){}
~RAII() {delete p_;}
T& operator*() const { return p_;}
T* operator‐>() const{ return p_;}
};
{
RAII<std::vector<int>> r(new std::vector<int>());
std::cout<<r‐>size()<<std::endl;
} // The std::vector<int> is automatically deallocated
スコープを使い果たすと、デストラクタが呼び出されることを知っています。~RAII() {delete P_};
私の質問は:
デストラクタはどのように呼び出されますか?