C++;组织职能流程 我正在编写一个C++程序的程序,我需要编写一个函数,输入一个与它相连的计算机的一些数字。
此功能应执行许多不同且定义明确的任务,例如:从计算机获取数据(字符),检查字符是否有效,将字符转换为实际数字,以及许多其他任务。作为单个函数编写,它至少有500行长。因此,我将编写一组较短的函数和一个“main”函数,以唯一有意义的顺序调用其他函数。这些函数永远不会在代码的其余部分被调用(当然,主函数除外)。最后一件事-函数需要相互传递相当多的变量C++;组织职能流程 我正在编写一个C++程序的程序,我需要编写一个函数,输入一个与它相连的计算机的一些数字。,c++,organization,C++,Organization,此功能应执行许多不同且定义明确的任务,例如:从计算机获取数据(字符),检查字符是否有效,将字符转换为实际数字,以及许多其他任务。作为单个函数编写,它至少有500行长。因此,我将编写一组较短的函数和一个“main”函数,以唯一有意义的顺序调用其他函数。这些函数永远不会在代码的其余部分被调用(当然,主函数除外)。最后一件事-函数需要相互传递相当多的变量 组织这些职能的最佳方式是什么?我的第一个困难是创建一个只有公共部分中的“主”函数的类,以及其他函数和由不同函数共享的变量作为私有成员,但我想知道这
组织这些职能的最佳方式是什么?我的第一个困难是创建一个只有公共部分中的“主”函数的类,以及其他函数和由不同函数共享的变量作为私有成员,但我想知道这是否是一个好的实践:我认为它不尊重C++类的“类”概念。例如,要使用此“函数组”,我需要执行以下操作:
class GetNumbers {
public:
//using the constructor as what I called "main" function
GetNumbers(int arg1, char arg2) {
performFirstAction();
performSecondAction();
...
}
private:
performFirstAction() {...};
performSecondAction() {...};
...
bool aSharedVariable;
int anotherVariable;
...
};
我实际上需要从计算机中输入这些数字:
GetNumbers thisMakesNoSenseInMyOpinion (x,y);
使“main”函数成为普通类方法(而不是构造函数)似乎更糟糕:
GetNumbers howCanICallThis;
howCanICallThis.getNumbers(x,y);
...
//somewhere else in the same scope
howCanICallThis.getNumbers(r,s);
这实际上是一个软件设计问题。老实说,除非你和其他人共享这个组件,否则我真的很担心它是如何封装的 许多库(新库和旧库)可能会生成一系列以特定方式使用的函数。有时,它们有一个内置的“状态机”,但没有一种特定的方式来强制函数按特定的顺序使用。这是可以的,只要它有很好的记录。一组函数的前缀可能是同一个单词,如果它是可重用的,则可以打包为库,这样就可以有人链接到您的dll并包含适当的头 有限状态机(FSM)或有限状态自动机(FSA,复数:自动机)、有限自动机或简单的状态机是计算的数学模型 组织一组计算的另一种方法是将它们打包为一个类,允许构造函数接受所需的输入,然后
functor
(具有一组重载()运算符的类)