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;
}
程序出现错误 为什么 展开
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;
}
程序出现错误 为什么 展开
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函数不变!
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函数不变!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C++不允许对函数作嵌套定义,也就是说在一个函数中不能完整地包含另一个函数。在一个程序中每一个函数的定义都是互相平行和独立的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C/C++里不允许函数嵌套定义,你的h()函数里又定义了一个新的函数f()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询