使用类在C ++中存储和列出变量/方法是否是一个好习惯

时间:2018-10-02 17:52:30

标签: c++ class oop

我最近开始在编程中利用类,在这种情况下,尤其是C ++,我正在尝试了解实际使用它们的理想方法。理想情况下,如果确实存在这样的标准,我想养成练习写给他们行业期望的习惯。我了解您可能使用类来保存对对象有用的特定信息,例如汽车类。但是,关于诸如“ Formulas()”之类的类,该类仅存储程序其余部分可以利用的方法,或者仅包含变量的类用于存储常量,全局变量,或者通常只是您希望其他程序访问的任何类。

int main()
{
    //Just used minimally to start the program
}


class Car()
{
    //Variables of a car: Model, year etc
    //Methods of a car: Such as drive(), parkUp(); refuel(); 
}

//Below here is class formalities I'm unsure about, are they okay to use this way
class Formulas()
{
    //holds a bunch of a formulas/methods almost all the classes can utilize
    //Examples below
    void ErrorCheck()
    {
        //checks input errors
    }
    void ColourChange()
    {
        //changes font colour
    }
    void Clear()
    {
        //clears screen
    }
}

//A class to hold variables for the rest of the program
class VariableList()
{
    //store CONST_VARIABLES here

    //store global_variables here

    //other variables
}

总结一下,这是使用类,不切实际,糟糕等的一种公平方法。

任何对此的见解将不胜感激。在发布到这里之前,我曾尝试调查此问题,但找不到源或解释信息来获得我一直在寻找的答案。谢谢您阅读本文,如果有什么我可以补充的,请告诉我。

1 个答案:

答案 0 :(得分:7)

通常,类仅对封装数据并将其与对该数据进行操作的函数组合在一起才有意义。如果您只想对不对同一数据进行操作的多个相关功能进行分组,那么使用名称空间代替类就足够了。

在您的情况下,它看起来可能像这样:

namespace formulas
{
    void ErrorCheck()
    {
        //checks input errors
    }
    void ColourChange()
    {
        //changes font colour
    }
    void Clear()
    {
        //clears screen
    }
}

然后您可以将函数调用为:

formulas::ErrorCheck();

顺便说一句,您的函数似乎并没有真正的关联,但我想这不是重点。