c – 类构造函数中boost :: shared_ptr的默认值

假设我有
class A{
    public:
    A(int a,boost::shared_ptr<int> ptr){
        // whatever!
    }
};

我的问题是,该ptr的认值是多少?我想使用这个类创建一个实例

A myA(5);

当然我知道我可以使用一个参数创建另一个构造函数,但是我正在寻找类似的东西

A(int a,boost::shared_ptr<int> ptr = WAT?)

可能吗?目前我使用的是两种构造方法,但是这样做是非常好的.

解决方法

#include <boost/make_shared.hpp>

A(int a,boost::shared_ptr<int> ptr = boost::make_shared<int>())

检查http://www.boost.org/doc/libs/1_43_0/libs/smart_ptr/make_shared.html

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...