静态函数

静态函数基本上是一个成员函数,即使类的对象没有被初始化,也可以被调用。这些函数与任何对象相关联,用于在类的不同对象之间保持一个单一的类成员函数副本。这个函数通过使用静态关键字来表示。

友好函数

友好函数基本上是一个特别需要用来访问类的非公共成员的函数。它有权访问类的所有私有和受保护成员。它通常提供一些通常不被类使用的额外功能,并允许非成员函数共享类的信息。

静态函数和友情函数之间的表格区别:

静态函数 友好函数
静态函数是一个类的成员函数,即使该类的对象没有被初始化也会被调用。 友好函数是一个在类的范围之外声明的函数。
在这里,除了静态变量,它不能访问其类的任何变量。 友好函数可以访问类的私有和公共成员。
静态函数是通过在函数名前放置一个静态关键字来表示的。 友好函数是通过在函数名前放置一个friend关键字来表示的。
这个函数一般用于使函数成员独立于类的任何特定对象。 友好函数一般用于访问类的非公共成员。
当人们想要一个对类的每个实例都相同的函数时,通常会使用这些函数。 友好函数通常用于共享以前隐藏的类的信息。
静态函数可以访问一个类的成员。 友好函数可以访问多个类的成员。
当人们需要重载操作符时,它不能被使用。 当人们需要重载操作时,可以使用友好函数,因为重载操作只能通过好友或非静态成员来完成。
如果函数不需要读取、改变或修改类的特定实例的状态,或者需要使用指向类的成员函数的函数指针,也可以使用它。 当人们想创建不是类的成员,也不应该是其类的成员的代码时,也可以使用该函数。
这个函数可以被隐藏在权限之后。 友好函数不能被隐藏,任何人都可以调用这个朋友函数。
静态函数与类相关,而不是一个对象。 友好函数被声明在类中,但不属于该类。