c++特定变量转换为通用变量
C++ specific variable to a general one
我当前工作代码:
void GraphicFunctions::drawECM(const OpenGLCamera& camera)
{
gl->drawECMEdges(camera, ecm, layerID);
}
OpenGL类:void OpenGL::draw(const OpenGLCamera& camera)
{
const vector<double>& cameraBBox = camera.getBoundingBox();
}
是否有可能使"OpenGLCamera"更一般,使其成为一个指针或什么?例如:
void GraphicFunctions::drawECM(const OpenGLCamera& camera)
{
const int* camerapointer = camera;
gl->drawECMEdges(camerapointer, ecm, layerID);
}
OpenGL类:void OpenGL::draw(const int& camera)
{
const vector<double>& cameraBBox = camera->getBoundingBox();
}
这样我就可以使用其他类型的相机了…!
只需使用继承来添加不同的相机类型。如果您通过引用
传递它们,这也会起作用。struct Camera1 : public OpenGLCamera
{
// reimplement something
}
struct Camera2 : public OpenGLCamera
{
}
现在可以传递给OpenGL::draw(const OpenGLCamera& camera)
相关文章:
- 如何在保持其值的同时将 c++ 无符号字符变量转换为 char 变量
- 是否可以将已经初始化的变量转换为 void*?
- C++字符串类如何将一个变量转换为另一个变量?
- std::chrono::time_point 从变量转换时编译器错误
- std::变量转换构造函数行为
- 尝试将字符串变量转换为布尔值会导致 "true" 和 "false" 都等于 0
- C++将字符变量转换为字符串变量将返回 ASCII 值
- 将大端序的 32 位变量转换为小端序
- 在代码优化过程中,C++11编译器是否会在可能的情况下将局部变量转换为右值
- 有符号浮点变量转换为无符号DWORD
- 将初始变量转换为已声明的变量
- 将C++字符串变量转换为long
- 如何将DWORD或char*类型的变量转换为LPCWSTR
- 如何在 c++ 中将包含时间的字符串变量转换为time_t类型
- C++变量转换为模板参数
- 将 [char] 变量转换为 [int],然后再转换回 [char]
- 如何将 int 变量转换为 ASCII 单词
- 将c++类的私有变量转换为公有变量
- 将变量转换为const
- 如何将方法返回的接口变量转换为对象