是否有一种明智的方法来执行以下操作: 我和其他人将编写许多可执行文件,许多将在未来添加。每个可执行文件都运行基 Worker 类的派生类。所以有 Worker1、Worker2、Worker3、...,每个可执行文件将执行不同的任务。
尽管各不相同,但它们的主要功能始终相同:
int main() {
Worker1 myWorker;
return myWorker.Initialize_And_Run();
}
显然,输入的内容并不多,但我想避免代码重复,以防主函数将来需要更多逻辑。另外,我很好奇这是否可能。
有没有办法写一个预写的主函数来避免重复?
感谢大家的帮助!
编辑:稍微简化了代码
最佳答案
使用可以在命令行上定义的宏。
int main()
{
WORKER_TYPE myWorker;
return myWorker.Initialize_And_Run();
}
例如,在 gcc 中,您可以按如下方式编译:
g++ -D'WORKER_TYPE=Worker1' main.cpp -o main
这将用 WORKER_TYPE
替换为 Worker1
进行编译。
关于c++ - 每个基类的预写主函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20038940/