cat *functiontwo(cat *thecat)
{
cout<<"2222222222";
return thecat;
}
教你一个简单的判断返回类型的办法吧。
请看你返回的是cat *——这是一个cat类型的指针
你返回的东东要能补全它cat *thecat;
联想一下int f(){...}在写返回是应该写return t;——假设t为一个int。运用补全法:int t;和t的声明一样就说明你的返回是正确的。
这方法简单易记,楼主想在cat *thecat的thecat前加上一个*就成了cat **thecat成了指向指针的指针
#include
using namespace std;
class cat
{
public:
cat(){cout<<"begin>>>>>>>>>>>"<
};
cat *functiontwo(cat & thecat); //引用是&,你的写法是传递的指针
int main()
{
cat mao;
functiontwo(mao);
return 0;
}
cat *functiontwo(cat & thecat)
{
cout<<"2222222222";
return & thecat; //取地址,即指针
}
你仔细的理解一下引用和指针吧。