当前位置 : 主页 > 编程语言 > c++ >

c – 在全局函数或全局函数包装的类中实现

来源:互联网 收集:自由互联 发布时间:2021-06-23
我必须根据预定义的签名实现一组60个函数.它们必须是全局函数,而不是某些类的成员函数.当我实现它们时,我使用了第三方提供的一组很好的类. 我对大多数函数的实现很短,大约5到10行
我必须根据预定义的签名实现一组60个函数.它们必须是全局函数,而不是某些类的成员函数.当我实现它们时,我使用了第三方提供的一组很好的类.

我对大多数函数的实现很短,大约5到10行,并且主要处理对第3方类的不同访问.对于一些更复杂的函数,我创建了几个处理所有复杂内容的新类,我也在函数中使用它们.所有状态信息都存储在我和第三方类的静态成员中,因此我不必创建全局变量.

问题:如果我实现一个具有60个成员函数的大类,并且完成所有实现(现在在全局函数中)会更好吗?我必须编写的每个函数都只调用类中相应的成员函数.

All the state information is stored in the static members of my and 3rd party’s classes, so I don’t have to create global variables.

这是关键点.不,他们绝对不应该上课.类被用于创建对象.在您的情况下,您可以将它们用作数据和功能的范围.但这就是名称空间已经更好地解决的问题:

namespace stuff {
    ... 60 functions ...
    namespace baz {
        ... if you want, you can have nested namespaces, to ...
        ... categorize the functions ...
    }

    namespace data {
        ... you can put data into an extra namespace if you want ...
    }
}

创建纯粹仅由静态成员组成的类是一个坏主意.

网友评论