Effective C++ 随笔(3)

条款12: 以对象管理资源 两种只能指针:

std:auto_ptr<>

当使用copy操作室,原先的智能指针指向为null

std:tr1:share_ptr<int> spi();

当可以多个指向同样的地址,但是当delete是会进行根据指向改地址的指针数量是否要delete这块内存

条款13 在资源管理中小心copying行为

class Lock{

public:

	explicit Lock(Mutex* pm):mutexPtr(pm){

		lock(mutexPtr);

	}

	~Lock(){

		unlock(mutexPtr);

	}

	private:

	Mutex * mutexPtr;

};



Mutex m;



{

	Lock m(&m);

}

 当执行到区块的末尾时会自动的执行Locd的析构函数,从而释放锁

 

你可能感兴趣的:(effective)