#include <iostream>
#include <memory>
#include <vector>
using namespace std;

class Hoge {
public:
	Hoge() { cout << "Create Hoge!" << endl; }
	~Hoge() { cout << "Delete Hoge!" << endl; }
};

int main() {
	// 生ポインタの場合、明示的に delete をしてやる必要がある。
	auto rowPtr = new Hoge();
	delete rowPtr;
	
	// unique_ptr はスコープを抜けたタイミングで自動的にdeleteしてくれる。
	unique_ptr<Hoge> smartPtr(new Hoge());

	return 0;
}