我需要在名为camerapos的向量中访问两个值,其中包含值x,y,z但是当我这样做时,我会得到c3867。
int Camera::getCamerapos(){
int x = camerapos.x; //c3867
int y = camerapos.y; //c3867
return x,y;
}
答案 0 :(得分:2)
从error code(假设为MSVC)看起来x
和y
是函数/方法。所以,也许您应该用
int x = camerapos.x();
int y = camerapos.y();
顺便说一句,您的返回类型是(一个)int
,因此您无法返回 {em> x
和y
同时。也许您想要返回std::pair<int>
或某种Point
结构?
答案 1 :(得分:0)
嗯,第一个问题是C ++只能返回一个值。如果您需要多个值,则需要使用引用;类似的东西:
void Camera::getPos(int &x, int &y)
{
x = camerapos.x;
y = camerapos.y;
}
这更贴近您拍摄的内容吗?我假设camerapos
是您Camera
课程的成员。