问题在于:我正在开发一个框架(CLCuda,而不是那里最具创造性的名称)程序员实例化一个对象,并取决于系统支持的内容(CUDA或AMD OpenCL) ,将使用相应的方法,而不必更改任何代码行。
我有一个名为CLCuda
的抽象类(纯虚方法,但可能只是虚方法),实现其方法的两个类是CLCudaCUDA
和CLCudaOPENCL
。
我希望得到类似的东西:实例化一个对象,它将根据用户拥有的图形卡来提供CUDA或OpenCL,可以访问可用平台的方法(通过类CLCudaCUDA
或{ {1}})。
我已经编写了CLCudaOPENCL
和CLCudaOpenCL
的方法(很难做到这一点),所以我的问题在于OOP。
我怎样才能构建我的课程?
如果有人可以提供帮助......非常感谢!