关于C#:方法和函数之间的区别?


Difference between Method and Function?

本问题已经有最佳答案,请猛点这里访问。

我是C_的初学者,对学习C_有浓厚的兴趣,但我很困惑。当我问某人函数和方法之间的区别是什么时,他对我说没有区别,它们都有相同的功能。现在我很困惑,想从优秀的开发人员那里知道什么方法和函数?

它们都一样吗?如果不是,那么如何初始化每一个呢??

这样初始化函数是否正确?

1
public void UpdateLeaveStatus(EmployeeLeave objUpdateLeaveStatus)

我是新来的,请提供适当的帮助。


两者都是一样的,没有区别,只是在c中对同一事物的不同术语。

方法:

In object-oriented programming, a method is a subroutine (or procedure
or function) associated with a class.

对于面向对象编程,使用术语"方法",而不是函数。


当函数是类的一部分时,它被称为方法。

C是一种OOP语言,没有在类外部声明的函数,这就是为什么C中的所有函数实际上都是方法。

尽管,除了形式上的不同,它们还是一样的……


在C中,它们是可互换的(尽管方法是适当的术语),因为您不能在不将方法合并到类中的情况下编写方法。如果它独立于类,那么它将是一个函数。方法是通过指定类操作的函数。


C中没有函数。有方法(典型方法:public void UpdateLeaveStatus(EmployeeLeave objUpdateLeaveStatus)链接到msdn)和函子-Func<>型变量


从面向对象编程概念:

如果您有一个函数正在访问/mutating类的字段,它将成为方法。否则,它是一个函数。

如果你把爪哇/C++类中的所有函数都称为方法,那就不是犯罪。原因是您直接/间接地访问/改变类属性。那么为什么不是爪哇/C++类中的所有函数都是方法呢?


两者都是相同的,都是一个术语,意思是将一些代码封装到一个可以从其他地方调用的工作单元中。

从历史上看,"方法"可能是不返回值的东西,而"函数"可能是不返回值的。在C中,这将翻译为:

1
2
public void DoSomething() {} // method
public int DoSomethingAndReturnMeANumber(){} // function

但实际上,我再次重申,这两个概念确实没有区别。


在某些编程语言中,它们被称为函数,而其他人称之为方法,事实上它们是相同的。它只是表示一种抽象形式的数学函数:

1
f -> f(N:N).

这意味着它是一个具有自然数值的函数(只是一个例子)。因此,除了名称之外,它完全是相同的东西,代表一块代码,其中包含解决您的目的的指令。


来自结构化编程语言背景的程序员知道它是一个函数,而在OOPS中它被称为一个方法。

但这两者没有任何区别。

在过去,方法没有返回值,函数也没有。现在它们都可以互换使用。