在C++中调用成员函数而不创建对象

Adi*_*oop 5 c++ c++14

谁能解释为什么我们可以在不创建对象实例的情况下调用静态成员函数,但在非静态函数的情况下却不能?

我到处搜索,我找不到解释,你能帮忙吗?

MSa*_*ers 6

你的逻辑基本上是相反的。拥有属于某个类的函数很有用,即使它们不需要在该类的对象上调用。Stroustrup 不想为此添加新关键字,因此他重新利用了现有关键字static以将此类方法与普通方法区分开来。

事后看来,本可以选择其他选项。例如,我们可以this为普通方法创建一个显式的函数参数。但现在已经晚了大约 30 年。