我只是需要一些简单问题的帮助..我正在尝试学习C ++,因为我想进入游戏编程,我有以前的编程经验,但不是在C ++中..我的问题有点像这个。我正在制作一个虚拟控制台应用程序,它将获取当前XYZ的数字并将其与一组坐标进行比较.. [x1,z1,y1 / x2,y2,z2]并检查你是否'在这个区域内..现在我可以自己做...我的问题是,你怎么写一些允许你重用这个函数但有不同输出的东西,例如,如果它在X框内然后做X,如果它在Y框中然后做Y ..这就是我目前所拥有的..
void withinRange(int x1, int y1, int z1, int x2, int y2, int z2)
{
if (cCoordx > x1 && cCoordy > y1 && cCoordz > z1 && cCoordx < x2 && cCoordy < y2 && cCoordz < z2)
{
}
}
我不确定如何扩展它以使其成为可重复使用的功能..
答案 0 :(得分:1)
你问:
你会如何编写一些允许你重复使用这个函数但却有不同输出的东西,例如,如果它在X框中然后做X,如果它在Y框中然后做Y
withinRange
。bool withinXRange(int x1, int x2)
{
return (cCoordx > x1 && cCoordx < x2);
}
bool withinYRange(int y1, int y2)
{
return (cCoordy > y1 && cCoordy < y2);
}
bool withinZRange(int z1, int z2)
{
return (cCoordz > z1 && cCoordz < z2);
}
bool withinRange(int x1, int y1, int z1, int x2, int y2, int z2)
{
return ( withinXRange(x1, x2) &&
withinYRange(y1, y2) &&
withinZRange(z1, z2) );
}
在通话功能中:
int x1 = <some value>;
int x2 = <some value>;
if ( withinXRange(x1, x2) )
{
// Do something
}