我正在开发一个C ++应用程序,我需要创建X个类。比方说:AAA级,BBB级和CCC级。每个类对应一种我需要处理的对象。 另一方面,我有一个CVS类型的输入文件。该输入文件的一个示例如下所示:
AAA,3432443,433434,11111,45678
AAA,8778776,786698,22222,86881
BBB,4452332,112234,34543,87734
所以,我需要解析该输入文件,并根据该行的第一个元素(AAA,BBB,CCC),我需要创建相应的对象,该对象将存储行中找到的其他值。
但是,为了使用一系列条件,我不能在应用程序中“嵌入”可能的类(AAA,BBB,CCC),例如:
if (token == "AAA") then AAA aaa = new AAA (params);
代替:
if (token == "DDD") then DDD ddd = new DDD(params)
。这是禁止的。retrieved_type_from_input_file object = new retrieved_type_from_input_file(params);
其中“retrieve_type_from_input_file”是一个变量,它包含我应该创建的类的有效类型:AAA ... ZZZ T object = new T(params);
但即使我可以在一个类中编写代码;在实现中我需要类的真实姓名。请帮忙吗? 非常感谢提前!!
答案 0 :(得分:0)
我猜,你需要代码生成器:
步骤1.编写一个程序,根据您的配置文件在.h,.cpp文件中生成类。
您可以在此步骤中创建/声明类的对象
步骤2.利用生成的类来构建exe文件。
这是我粗略的想法,并寻找其他人的其他可能性。