C++怎样利用成员函数给成员变量赋值 然后得到该成员变量的值

#include<iostream.h>#include<stdlib.h>classB{public:intc;//成员变量cinth()/*利用h()函数里的f()给... #include <iostream.h>#include <stdlib.h>
class B{
public:
int c; //成员变量c
int h()/*利用h()函数里的f()给成员变量c赋值,假设h()可以return int而f()只能声明为void*/
{
void f()
{
int x=10;
c=x*x;
};
return c;
};
};

class A{
B b0;
public:
int g()
{
return b0.h();
};
};

int main(){
A a;
int d=a.g();
std::cout<<d;
system("PAUSE");
return 0;
}
程序出现错误 为什么
展开
 我来答
xiaohengas
推荐于2018-03-23 · TA获得超过407个赞
知道小有建树答主
回答量:401
采纳率:0%
帮助的人:445万
展开全部
void f()
{
int x=10;
c=x*x;
};
int h()/*利用h()函数里的f()给成员变量c赋值,假设h()可以return int而f()只能声明为void*/
{
f();
return c;
};
修改成这样就可以了
孤魂紫英
推荐于2016-02-13
知道答主
回答量:19
采纳率:0%
帮助的人:25.4万
展开全部
估计你的程序编译都不通过吧!函数里边再定义函数是错误的,只能调用函数!而且函数结束的大括号后面没有分号!改成这样试试:
class B{
public:
int c; //成员变量c
void f()
{
int x=10;
c=x*x;
}
int h()
{
f();
return c;
}
};

class A{
B b0;
public:
int g()
{
return b0.h();
}
};
main函数不变!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
道魔师
2013-01-03 · TA获得超过133个赞
知道小有建树答主
回答量:67
采纳率:0%
帮助的人:88.4万
展开全部
C++不允许对函数作嵌套定义,也就是说在一个函数中不能完整地包含另一个函数。在一个程序中每一个函数的定义都是互相平行和独立的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sdyxb
2013-01-03 · TA获得超过1923个赞
知道小有建树答主
回答量:568
采纳率:0%
帮助的人:375万
展开全部
C/C++里不允许函数嵌套定义,你的h()函数里又定义了一个新的函数f()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式