struct A
{
A(int a);
};
struct B
{
B();
void b(std::shared_ptr<A> a);
};
int main()
{
A a(1);
B b;
b.b(&a);
}
所以我得到了这个错误,抱歉,这是我的智能指针的第一次!没有合适的构造函数存在将“哑指针”转换为“智能指针”
错误:
no suitable constructor exists to convert from
"A *"
to"std::tr1::shared_ptr<A>"
我该如何解决这个问题!?
那是什么'B(void)'? – 2011-05-25 23:42:42
我的猜测是一个构造函数 – 2011-05-25 23:45:26
B(void)ctor !!!? – Abanoub 2011-05-25 23:46:51