c++按引用传递对象
不明白为什么在下面这段程序的最后returnthecat不写成return*thecat我感觉着按引用传递对象,按引用返回cat对象应该往前面加个*号的,还望高手指点#i...
不明白为什么在下面这段程序的最后return thecat
不写成return * thecat
我感觉着按引用传递对象,按引用返回cat对象应该往前面加个*号的,还望高手指点
#include <iostream>
using namespace std;
class cat
{
public:
cat(){cout<<"begin>>>>>>>>>>>"<<endl;}
cat(cat &){cout<<"again!!!!!!!!!!"<<endl;}
~cat(){cout<<"over~~~~~~~~~~~~~~~";}
};
cat *functiontwo(cat *thecat);
int main()
{
cat mao;
functiontwo(&mao);
return 0;
}
cat *functiontwo(cat *thecat)
{
cout<<"2222222222";
return thecat;
} 展开
不写成return * thecat
我感觉着按引用传递对象,按引用返回cat对象应该往前面加个*号的,还望高手指点
#include <iostream>
using namespace std;
class cat
{
public:
cat(){cout<<"begin>>>>>>>>>>>"<<endl;}
cat(cat &){cout<<"again!!!!!!!!!!"<<endl;}
~cat(){cout<<"over~~~~~~~~~~~~~~~";}
};
cat *functiontwo(cat *thecat);
int main()
{
cat mao;
functiontwo(&mao);
return 0;
}
cat *functiontwo(cat *thecat)
{
cout<<"2222222222";
return thecat;
} 展开
展开全部
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成了指向指针的指针
{
cout<<"2222222222";
return thecat;
}
教你一个简单的判断返回类型的办法吧。
请看你返回的是cat *——这是一个cat类型的指针
你返回的东东要能补全它cat *thecat;
联想一下int f(){...}在写返回是应该写return t;——假设t为一个int。运用补全法:int t;和t的声明一样就说明你的返回是正确的。
这方法简单易记,楼主想在cat *thecat的thecat前加上一个*就成了cat **thecat成了指向指针的指针
展开全部
#include <iostream>
using namespace std;
class cat
{
public:
cat(){cout<<"begin>>>>>>>>>>>"<<endl;}
cat(cat &){cout<<"again!!!!!!!!!!"<<endl;}
~cat(){cout<<"over~~~~~~~~~~~~~~~";}
};
cat *functiontwo(cat & thecat); //引用是&,你的写法是传递的指针
int main()
{
cat mao;
functiontwo(mao);
return 0;
}
cat *functiontwo(cat & thecat)
{
cout<<"2222222222";
return & thecat; //取地址,即指针
}
你仔细的理解一下引用和指针吧。
using namespace std;
class cat
{
public:
cat(){cout<<"begin>>>>>>>>>>>"<<endl;}
cat(cat &){cout<<"again!!!!!!!!!!"<<endl;}
~cat(){cout<<"over~~~~~~~~~~~~~~~";}
};
cat *functiontwo(cat & thecat); //引用是&,你的写法是传递的指针
int main()
{
cat mao;
functiontwo(mao);
return 0;
}
cat *functiontwo(cat & thecat)
{
cout<<"2222222222";
return & thecat; //取地址,即指针
}
你仔细的理解一下引用和指针吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询