我正在写一个程序。在主函数“int main()”中,我调用一个名为“int X()”的函数。在“int X()”里面我想调用另一个函数“void Y()”。任何想法如何做到这一点?我尝试在X()函数内做“Y();”和“无效Y();”但没有占上风。有关使其工作的任何提示?如果可能的话?
离。
#include<iostream>
int X()
{
Y();
}
void Y()
{
std::cout << "Hello";
}
int main()
{
X();
system("pause");
return 0;
}
答案 0 :(得分:3)
您必须在使用之前声明Y():
void Y();
int X()
{Y();}
答案 1 :(得分:1)
编译器到达时:
int X()
{
Y();
}
它不知道Y
是什么。您需要在Y
之前通过反转其声明来声明X
:
void Y()
{
std::cout << "Hello";
}
int X()
{
Y();
}
int main()
{
X();
system("pause");
return 0;
}
您还应为return
提供X
值,否则会弹出警告。
请注意,不要遵循使用using namespace std;
的建议。你写std::cout
的方式很好。
here就是一个有效的例子。
答案 2 :(得分:0)
您需要在Y
函数使用它之前声明X
函数。
在X
:
void Y();
答案 3 :(得分:0)
您必须在使用之前定义或声明您的功能。例如:
void Y(); //this is just a declaration, you need to implement this later in the code.
int X(){
//...
Y();
//...
return someIntValue; //you will get warned if function supposed to return something does not do it.
}
OR
void Y(){
//code that Y is supposed to do...
}
int X(){
//...
Y();
//...
}
当您调用该函数时,您不再编写其类型(要调用函数Y,您可以编写:Y(arguments);
而不是void Y(arguments);
)。只在声明或定义函数时才写入类型。