我正在使用实现一组系统测试的抽象基类。在简化形式中,类声明是:
class Test_Class
{
Test_Class();
~Test_Class();
Run_Test(void * param_set = NULL) = 0;
}
基类需要实现 Run_Test 函数,该函数允许用户将任意数据结构作为 void 指针传递,并将其转换为子类中 Run_Test 主体内的适当类型,以允许使用不同的测试不同的数据结构,例如一个测试中的浮点数与另一个测试中的整数列表。
这很麻烦,并且看起来像是一种难以置信的类似 C 的做事方式。有没有更好的方法来使用继承或其他语言实用程序?
注意:由于客户限制,不允许此程序访问 STL 或 Boost 库。