C++ 当返回值为';不需要吗?
我有一个函数如下所示:C++ 当返回值为';不需要吗?,c++,function,return-type,C++,Function,Return Type,我有一个函数如下所示: int Game::GetInput() { while (true) { // do stuff if (something) { // do this return 0; } else { // do other stuff } } } 我想知道,仅仅为了离开函数(返回的值在程序中除了结束函数外不会
int Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return 0;
}
else {
// do other stuff
}
}
}
我想知道,仅仅为了离开函数(返回的值在程序中除了结束函数外不会做任何事情),使用返回函数而不是void函数是否常见或合适。这是一种好的做法,还是有更好的方法来结束函数?只需使函数
无效
,然后简单地返回即可
// vv void return type
void Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return; // <<<< No return value
}
else {
// do other stuff
}
}
}
//vv无效返回类型
void Game::GetInput(){
while(true){
//做事
如果(某物){
//这样做
return;//只需使函数无效
,然后简单地返回
// vv void return type
void Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return; // <<<< No return value
}
else {
// do other stuff
}
}
}
//vv无效返回类型
void Game::GetInput(){
while(true){
//做事
如果(某物){
//这样做
return;//您可以轻松地使用return;
不带参数退出void
函数。您的上述代码将变成:
void Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return;
}
else {
// do other stuff
}
}
}
您可以轻松地使用return;
而不带参数退出void
函数。您的上述代码将变为:
void Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return;
}
else {
// do other stuff
}
}
}
void函数没有问题。如果它没有返回任何有用的值,它应该是void。void函数没有问题。如果它没有返回任何有用的值,它应该是void。如果函数没有要返回的有用值,最好不要返回值-因为调用代码应该检查r返回的值
您的代码可以双重简化:
void Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return;
}
// do other stuff
}
}
else
是不必要的;执行'do other stuff'的唯一方法是如果某物
为false。如果函数没有要返回的有用值,最好不要返回值,因为调用代码应该检查返回的值
您的代码可以双重简化:
void Game::GetInput() {
while (true) {
// do stuff
if (something) {
// do this
return;
}
// do other stuff
}
}
else
是不必要的;执行“do other stuff”的唯一方法是如果something
为false。@vorbis:Yes.Avoid
返回类型表示没有要返回的值。@vorbis:Yes.Avoid
返回类型表示没有要返回的值。