读书人

面向对象有没有必要把大局函数封装起

发布时间: 2012-08-22 09:50:35 作者: rapoo

面向对象,有没有必要把全局函数封装起来?
静态函数?

单件模式?

Java 是怎么做的?

[解决办法]
指的是什么全局函数??main算不算??java里要求main就是一个静态的函数。
[解决办法]

探讨
静态函数?

单件模式?

Java 是怎么做的?

[解决办法]
探讨

引用:
静态函数?

单件模式?

Java 是怎么做的?


1. 可以将全局函数(变量),作为一个静态成员(函数或者变量)放到一个类里面实现封装。
2. 单件模式也是可以的。
3. Java没有全局函数(方法)或变量的概念,任何东西都在一个类里面,包括main方法。通常也就是采用你上面说的两种方法,来实现C++所谓的全局函数或者变量。

[解决办法]
有联系的几个可以封装起来
[解决办法]
你这里的全局函数用类的静态函数来封装,我觉得和单件模式没什么关系。
对于类中的静态函数,其实就相当于在全局函数外面套了一个命名空间而已。
而单件模式可不仅仅是这样子,它提供的是一个全局的唯一对象。

探讨
引用:

引用:
静态函数?

单件模式?

Java 是怎么做的?


1. 可以将全局函数(变量),作为一个静态成员(函数或者变量)放到一个类里面实现封装。
2. 单件模式也是可以的。
3. Java没有全局函数(方法)或变量的概念,任何东西都在一个类里面,包括main方法。通常也就是采用你上面说的两种方法,来实现C++所谓的全局函数或者变量……

[解决办法]
探讨

你这里的全局函数用类的静态函数来封装,我觉得和单件模式没什么关系。
对于类中的静态函数,其实就相当于在全局函数外面套了一个命名空间而已。
而单件模式可不仅仅是这样子,它提供的是一个全局的唯一对象。

引用:
引用:

引用:
静态函数?

单件模式?

Java 是怎么做的?


1. 可以将全局函数(变量),作为一个静……

[解决办法]
探讨

引用:

引用:
静态函数?

单件模式?

Java 是怎么做的?


1. 可以将全局函数(变量),作为一个静态成员(函数或者变量)放到一个类里面实现封装。
2. 单件模式也是可以的。
3. Java没有全局函数(方法)或变量的概念,任何东西都在一个类里面,包括main方法。通常也就是采用你上面说的两种方法,来实现C++所谓的全局函数或……

[解决办法]
这里我们的理解或有不同。
如果用类来封装全局函数,且封装成静态函数,那么该类是不应该有对象存在的。
如果你要用单件模式,那就完全是另一回事情了。

探讨
全局的东西也是只有一份,所以将全局的东西和Singleton联系起来还是有一定的道理的。

[解决办法]
我总觉得,你说的这个做法,不仅仅是封装全局函数的事情了。
而且,“不优雅”是肯定的。

探讨
引用:
你这里的全局函数用类的静态函数来封装,我觉得和单件模式没什么关系。
对于类中的静态函数,其实就相当于在全局函数外面套了一个命名空间而已。
而单件模式可不仅仅是这样子,它提供的是一个全局的唯一对象。


用单件模式就是把全局函数作为该类的成员函数,该类只存在全局唯一对象

[解决办法]
java中貌似没有全局函数,有些工具函数都是静态地封装在一个类中,并且最好私有化构造函数防止生成实例。
c++中全局函数我所见过的有像java一样静态地封装到一个类中,或者封装在一个命名空间中。个人感觉封装在命名空间中比较优雅咯 呵呵

读书人网 >C++

热点推荐