友元函数与普通函数有什么不同
时间: 2024-04-28 07:20:45 浏览: 175
C++友元函数与拷贝构造函数详解
友元函数和普通函数的最大不同在于它们的访问权限。普通函数只能访问公共成员(public)和保护成员(protected),而不能访问私有成员(private)。而友元函数可以访问类的私有成员,即使它不是类的成员函数。这样,友元函数可以访问那些普通函数无法访问的数据,更加灵活。
另一个不同点是:普通函数可以通过类的对象来调用,而友元函数不属于类的成员函数,因此不能被直接调用。友元函数必须通过函数名来调用,就像普通函数一样。
总的来说,友元函数的主要作用是扩展类的访问权限,使得一些外部函数可以访问类的私有成员,从而提高了程序的灵活性和可维护性。
阅读全文