我来自非常温和的 C 背景,对 C++ 有点陌生,所以如果这个问题看起来很初级,请原谅。
我目前已经获得了一些 C++ 源代码来阅读和修改。
但是,在我看来,代码对于新手来说非常难看,但我不确定该代码是否被认为是良好的 C++ 实践。
基本上只有一个类叫做 STORAGE,所有的信息都是公开的。
class STORAGE
{
public:
STORAGE();
virtual ~STORAGE();
//DATA
int np,nn;
int istep;
int print_step;
//...and many more variables.
//METHODS
void eos(double rho, double e, double &p, double &cs);
void ThermalEnergy(double rho,double &e,double p);
void allocation();
void initialization();
void var_dt();
// and many more methods which return void,
};
现在,当我阅读调用这些方法的算法时,我看到它们中的每一个都修改了 STORAGE 的许多成员变量,其中许多方法修改了同一组变量,在一长串方法调用中。许多方法都是相当烦人的类型void A ()
有了这样的风格,似乎很难在脑海中跟踪大量成员变量的变化。
我的问题:在使用类时,这种编程风格对 C++ 是否通用?让方法访问类的所有成员似乎有点危险,而且似乎会出现很多错误代码。
从心理上来说,如果我知道在函数调用中被修改的唯一变量是函数的输入变量,那么编写代码看起来要简单得多。