unj*_*nj2 4 c++ pointers function smart-pointers
我是C++智能指针的新手,我很难理解这个关于将它们用于函数参数的建议.
"C++编码标准:101规则,指南和最佳实践"说这些是传递智能指针的原因.
喜欢通过(智能)指针
- 如果参数是可选的(因此调用者可以将null作为"不可用"或"不关心"值传递)
- 或者如果函数存储指针的副本
- 或以其他方式操纵论证的所有权.
有人可以给我一些他们每个人的例子,为什么不使用智能指针在案件中是个坏主意?