传递"No/Null/0"作为参考?

Pep*_*peJ 3 c++ null reference function

嘿,我有一点问题,我有这个功能

编辑:这不是我的功能,它是图书馆的一部分.

void Input_GetMousePos(
  float *x,
  float *y
);
Run Code Online (Sandbox Code Playgroud)

而且我只想存储Y值,那么我怎么说X是"NULL"或"我不想写任何东西"?

我找到的解决方法是声明一个变量,但从不再使用它,就像这样

float vx, vy;
_hge->Input_GetMousePos(&vx, &vy);
Run Code Online (Sandbox Code Playgroud)

然后我再也不会使用"vx"了.

所以我的问题是,有没有办法传递"NULL"或类似的东西?

也欢迎有关标题更改的建议.

zne*_*eak 6

NULL(和nullptr)的要点是你可以传递它们代替指针,所以回答你的问题("我怎么说'NULL'"),你只需说NULL.

_hge->Input_GetMousePos(NULL, &vy);
Run Code Online (Sandbox Code Playgroud)

对于C++ 11,我们鼓励您使用nullptr而不是NULL,因为它在某些带模板的边缘情况下表现更好.否则,两者都是相同的,所以如果你更舒服NULL,你也可以使用它.

_hge->Input_GetMousePos(nullptr, &vy);
Run Code Online (Sandbox Code Playgroud)

如果你已经尝试了它并且它崩溃或行为不端,那么你运气不好,并且接收X组件的虚拟变量就像你会得到的一样好.传递nullptr是这种情况的惯例,所以如果它不被尊重,那么你无法用这个特定的功能做任何事情.但是,可能有其他功能可以让您访问单个组件,但我们没有足够的信息来帮助您.