[c++]make_unique

c++11的标准库不提供std::make_unique,但是可以用以下方式简单实现:

//make_unique.h
#include<memory>
#include<utility>

template<typename T, typename... Ts>
std::unique_ptr<T> make_unique(Ts&&... params)
{
	return std::unique_ptr<T>(new T(std::forward<Ts>(params)...));
}

猜你喜欢

转载自blog.csdn.net/adream307/article/details/83107527