C++中的类里的成员函数是可以是私有函数或公有函数。两者的区别是,私有函数只可以在类里面调用,而公有函数其他类也可以调用。
成都创新互联公司网站建设公司提供网站设计和自适应建站服务。团队由有经验的网页设计师、程序员和市场专家组成,能够提供从成都h5网站建设,网站制作,1元广告,模板建站到重庆小程序开发等全方位服务。 以客户为中心,致力于为客户提供创新、高效的解决方案,帮助您打造成功的企业网站。
是用private来修饰的函数,在类中可以调用,但是在类外,就不可以调用了,这很好的符合了面向对象的编程思维,用户不必知道某些方法内部是怎样实现的,私有函数只会把结果返回给用户,这就是私有函数的好处。
例子:
#includeiostream
using namespace std;
class Hello{
private:
void print()
{
cout"Hello world"endl;
}
public:
void test()
{
print();
}
};
int main()
{
Hello test;
test.test();
return 0;
}
私有和公有都是对于这个对象的调用者来说的。私有成员对类内部是可见的,但对类外部不可见。但是如果一个公有函数内部用到了私有成员变量,那么调用者可以操作这个公有函数达到间接操作私有变量的目的。可能你会问,为什么不直接把变量设置成公有的,却通过一个公有函数间接操作?因为这样你可以在函数中做一些数值边界判断等,可以限制外部使其对类内部有条件的访问。
public下面的是公有成员,对象外的所有程序都能访问这些成员,private下的是私有成员,只有对象内部可以访问。
以数组类为例,如果我们要自己设计一个数组类,提供插入Insert、删除Remove等操作。那么Insert和Remove作为这个类的函数就应该用public,否则使用这个数组类的程序就无法使用这些功能。在实现这个数组类的时候,我们需要用一个整型变量记录当前数组个数,我们不希望这个变量能被使用者随意修改,而是在使用Insert和Remove的时候才修改,那么就把这个变量放在private下面声明,这样使用这个数组类的程序就不能直接修改这个变量的值,防止这个类的数据发生错乱。
与C语言没有什么可比性,公有成员和私有成员是面向对象的程序设计语言才有的概念,而C语言是面向过程的。