我参加过很多面试,面试官总是会问:“你知道虚拟函数吗?”我总是想知道为什么有经验的程序员/开发人员使用函数和虚拟。据我所知..不是所有的函数都可以是虚的,只有那些属于任何类/结构的函数才可以是虚的。
所以我认为“函数是超集,方法是子集。不是所有的函数都可以是方法,但是,所有的方法都是函数。因此,使用”虚拟方法“而不是”虚拟函数“是合适的。
有人能解释一下,为什么大多数有经验的程序员甚至技术书籍都使用“虚拟函数”而不是“虚拟方法”吗?
发布于 2013-04-06 16:16:08
从技术上讲,方法是属于类的方法,函数是不属于类的方法,但就像其他如此通用和常见的东西一样,人们最终会混淆术语,最终“函数”和“方法”都可以指一个或另一个。这就是你的问题的答案。最后,术语是由人们如何使用它来定义的,而不是由最初的预期含义来定义的。
发布于 2014-07-26 19:23:03
也许这个链接可以帮助你:
http://www.dotnet-tricks.com/Tutorial/oops/4a0J170612-Difference-between-function-and-method.html
是的,从语言上或逻辑上讲,函数不是类的一部分,但方法是类的成员成员()。
或者,用更简单的话说,方法没有自己的存在,它们属于类。但是这些函数有它们自己的存在。
我希望这也能澄清你的疑虑。
https://stackoverflow.com/questions/15848372
复制相似问题