我有一个函数,它将一个指针作为参考参数,但是我无法将&my_variable
传递给函数。我收到的错误是cannot convert parameter from my_class* to my_class*&
,使用VS2010。为什么我无法传递地址作为参考?
为什么不允许?
class my_class
{
public:
my_class();
my_class(my_class* &parent);
};
-
int main()
{
my_class a;
my_class b(&a); // Not legal
// ---
my_class a;
my_class* a_ptr = &a;
my_class b(a); // Legal
// ---
my_class* a = new my_class;
my_class* b = new my_class(a); // Legal
}
有道理。谢谢! – Eric 2012-01-09 20:37:06