我最近开始学习C ++,但我遇到了一个问题。 下面给出的程序没有给出我想要的结果,因为我只在结果中看到'Hi'而不是在void函数中写的是什么。 请告诉我发生这种情况的原因以及解决方案。

我正在使用Xcode 6.3.1,我选择了C ++语言。

#include <iostream>
using namespace std;

void ABC () {
    cout << "Hey there ! \n";
}

int main () {

    cout << "Hi \n";

    void ABC ();

    return 0;
}

===============>>#1 票数:8

您正在重新声明main()void ABC()函数。 只需拨打ABC(); 没有void

您可以查看有关在另一个范围内声明函数的此问题

===============>>#2 票数:6

在你的代码中你的函数调用是错误的。

调用函数时,无需添加返回类型:

#include

void ABC () {

  cout << "Hey there ! \n";

}

int main () {

  cout << "Hi \n";

  ABC ();

  return 0;
}

===============>>#3 票数:4 已采纳

你需要调用你的方法而不是在main中声明它

#include <iostream>
using namespace std;
void ABC () {
    cout << "Hey there ! \n";
    }
     int main () 
    {
         cout << "Hi \n";
        ABC ();
         return 0;
        }

编辑1:自从你开始学习C ++以来,我推荐以下建议,以确保你的代码更清晰。 请注意,这些不是任何规则,而是更多的最佳实践和编码风格。

  • 为你的变量,方法,函数,类使用有意义的名称...因此,如果你(或其他人正在阅读它),它将命名为它,而不是ABC()。
  • 调用方法和函数时,尝试使用适当的返回值声明它们。 根据定义,Void不会返回任何值,只是处理它内部的代码。 所以你的方法/函数应该返回它所假设的适当值。

这是代码的第2版,包含3种不同方法和调用的示例:

#include <iostream>

using namespace std;
int sum;
string  MethodReturningString() 
{
    return "Hey there i am the result of a method call !";
}

int  MethodReturningInt() 
{
    return 5;
}

void CalculateSum(int x,int y)
{
  sum=x+y;
}
int main()
{
   cout << MethodReturningString()  << endl; 
   cout << MethodReturningInt()  << endl; 
   cout << "Calculating sum:" ; 
   CalculateSum(5,4);
   cout << sum << endl; 
   return 0;
} 

快乐的编码

===============>>#4 票数:4

在C ++中,与几乎任何其他语言一样,在调用函数时不指定返回类型。 所以改变读取的行:

void ABC ();

至:

ABC();

===============>>#5 票数:0

尝试这个:

#include <iostream>
using namespace std;

void ABC () {

cout << "Hey there ! \n";
}

 int main () {

 cout << "Hi \n";

 ABC();

 return 0;
}

您应该通过声明其名称并添加括号来调用函数。

===============>>#6 票数:0

而不是使用void ABC()来调用main()中的函数ABC(),使用以下代码:

#include       

void ABC ()
{
     cout << "Hey there ! \n";
}

int main ()
{
        cout << "Hi \n";
    ABC ();
    return 0;
}

  ask by Yash Jaiswal translate from so

未解决问题?本站智能推荐: