Private Sub、Function 和 Class 的区别

Posted

技术标签:

【中文标题】Private Sub、Function 和 Class 的区别【英文标题】:Difference between Private Sub, Function and Class 【发布时间】:2011-05-02 20:27:27 【问题描述】:

以下有什么区别:

私人分会 私有函数 私人课堂

什么时候应该使用每一个?

【问题讨论】:

我不知道你在读什么,但是 msdn 上的这个链接可能会有所帮助msdn.microsoft.com/en-us/library/ms973814.aspx 【参考方案1】:

Private 是一个修饰符,它给出了类、子或函数的范围。

sub 和 function 都是子例程,或可以在程序中调用的代码段。它们的区别在于函数有返回值,而子函数没有。

类是一组代码,可以包含子类、函数和其他内容。

【讨论】:

甜蜜而简单的答案(y) 函数必须有返回值吗?或者你能有一个void 函数吗? 如果您没有为函数声明类型(或声明“作为对象”)并且没有指定返回值,它将返回“Nothing”。如果你不返回一个函数的值,它将与返回一个未定义的变量相同。 这真的是唯一的区别吗?我的意思是在这种情况下,我不明白为什么存在 subs...在内存使用或代码速度方面可能没有差异吗? 我认为这是遗产。 Function 和 Subroutine 至少从 Fortran 66 开始就已经存在了,那时 Basic 所拥有的只是 Gosub。那时使用更严格。在更现代的语言中,通常可以忽略函数的返回值或编写没有返回值的函数,尽管这可能不是最佳实践。两者的速度差异不大——您可以使用 StopWatch 进行尝试,并分别对等效函数和子函数进行大量调用。【参考方案2】:

Sub 就像一个函数,但它不返回任何值,它只是执行一个进程

【讨论】:

【参考方案3】:

类是一个类, Sub 和 Function 是方法, private 是一个访问修饰符

现在检查此链接,

http://msdn.microsoft.com/en-us/library/ms973814.aspx

【讨论】:

以上是关于Private Sub、Function 和 Class 的区别的主要内容,如果未能解决你的问题,请参考以下文章

作为模块化字段访问修饰符的 Dim、Global、Public 和 Private 有啥区别?

VB的sub和function的区别?

public , private ,static ,dim 四个的详细区别。求详解。。

Excel 我谈function和sub的区别

vb中 sub 与 function 的区别

一个Private Sub下的两个对话框功能