C++,私有的类成员函数怎么访问?53
发布网友
发布时间:2023-10-19 03:57
我来回答
共5个回答
热心网友
时间:2024-12-11 17:33
类的成员变量分三种: public protect private
1、类的成员函数可以访问类这三类
2、继承类成员函数可以访问 protect 类型
3、只有本身类的成员函数才可以访问 private 类型
4、类的对象若在其他函数中是不可以访问类的 protect private类型变量
类其实是个模型。
而对象就是找个这个模型制作的实体。
比如,类是造车的图纸,对象就是找个图纸造出的汽车。
类的成员是分级别的:protect,public,private。
在类内部定义的函数可以访问任何一个变量,或者调用任何的类内部的函数,但是,如果被定义成private的话,对象是不能调用的,也就是对象只能调用定义为public的数据,如果你确实需要调用某个private的变量,你可以定义一个public的函数来返回这个变量,比如:
class D
{
private:
int a;
public:
int Getint(){return a;}
......
}
这里你的对象不能调用a的,
也就是不能
int b;
D d;//假设已经写好了构造函数
b=d.a;//这是错误的,
但是你可以
b=d.Getint();
这样就可以把a的值给b了。
所有的public的函数都可以通过
<对象>.<函数名>
的方式来调用
热心网友
时间:2024-12-11 17:33
当然不可以,只能在自己的成员函数中调用
热心网友
时间:2024-12-11 17:34
不可以,私有成员函数只能被该类内部成员函数调用。
热心网友
时间:2024-12-11 17:34
可以通过友元函数实现
#include<iostream>
using namespace std;
class test
{
public:
test(){}
~test(){}
private:
void Display(){cout<<"test"<<endl;}
friend void display(test&);
};
void display(test& t)
{
t.Display();
}
int main(void)
{
test t;
display(t);
return 0;
}
热心网友
时间:2024-12-11 17:35
可以再声明一个公共函数,在此函数中调用私有的类成员函数。如:
public:
void func1(){display();}
void main()
{
...
time time1;
time1.func1();
...
}