请教:unique_ptr可以用void作模版参数吗?
c++吧
全部回复
仅看楼主
level 1
holpoirot
楼主
C++11。
现在需要一个变量保存数据,但头文件里不能暴露其细节,因此打算用void指针。
可不可以定义unique_ptr<void> p;然后再把它绑定到某个类型new出来的指针上?
主要担心能不能正确被delete。
2014年07月26日 04点07分
1
level 11
森哥先森
不能吧
个人网站marisa.moe
2014年07月26日 04点07分
2
贴吧用户_0aX3aA7128
噗。
2014年07月26日 11点07分
level 13
z什么什么k
unique_ptr可以用void作模版参数。
unique_ptr<void> p;不能正确被delete。
2014年07月26日 04点07分
3
level 15
幻の上帝
你要自己提供deleter。
2014年07月26日 10点07分
4
level 13
z什么什么k
我猜 incomplete class 或者 abstract class 都是比 void 更好的解决方式……
2014年07月26日 10点07分
5
level 12
贴吧用户_0aX3aA7128
用 unique_ptr<void> 不如 unique_ptr<class impl>。如果要可以实例化的可以用 shared_ptr<void>。
2014年07月26日 11点07分
6
1