在C ++中,方法和函数之间有什么区别

可能重复:
方法和函数之间有什么区别?

我试图让我的术语正确。

特别是关于C ++,方法和函数之间有什么区别。

是不是一个方法不返回,只是在它的类上执行操作; 而一个函数有一个返回值?


就C ++标准而言,没有像“方法”那样的东西。 该术语用于其他OO语言(例如Java)以引用类的成员函数。

在常见用法中,你会发现大多数人会或多或少地交替使用“方法”和“功能”,尽管有些人会将“方法”用于成员函数(与“自由函数”不同班级成员)。


对不起,这是我的宠物之一。 方法只是一个通用的面向对象类型术语。 C ++中不存在方法。 如果你打开C ++标准,你不会发现任何提及的“方法”。 C ++具有各种风格的函数。


方法是类的成员函数,但在C ++中,它们通常被称为成员函数而不是方法(某些来自其他语言(如Java)的程序员称它们为方法)。

函数通常意味着一个自由函数,它不是一个类的成员。

所以虽然成员函数是一个函数,但函数不一定是成员函数。

例:

void blah() { } // function

class A {
    void blah() { } // member function (what would be a "method" in other languages)
};

blah(); // free functions (non-member functions) can be called like this

A ainst;
ainst.blah(); // member functions require an instance to invoke them on
链接地址: http://www.djcxy.com/p/17307.html

上一篇: In C++, what is the difference between a method and a function

下一篇: Difference between methods and functions