我的问题是我已经初始化了函数mainscr(),该函数在条件调用vdetails()的情况下。但是如下面的代码所示,由于其中一个函数未在另一个函数之前初始化,因此程序无法编译。如果我将mainscr()放在vdetails()之上,mainscr将不会运行,但vdetails()会因为mainscr()之前已初始化而运行。谁能建议我如何在任何地方声明要使用的功能。
尝试使用已经包含vdetails()的标头文件,但是出现诸如include嵌套之类的错误消息。
void mainscr()
{
stringstream foos (detamt);
foos >> detamto;
char flago;
cout<<"Welcome To Maxon Bank Banking Portal"<<endl<<endl;
cout<<" Please Choose From the Following: "<<endl<<endl;
cout<<" 1. View Details "<<endl<<endl; cout<<" 2. Check Balance"<<endl<<endl;
cout<<" 3. Deposit Cash "<<endl<<endl; cout<<" 4. Withdraw Cash "<<endl<<endl;
cout<<" Option: ";
cin>>flago;
if (flago=='1')
{
vdetails();
}
void vdetails()
{
system("cls");
cout<<"Maxon Bank Banking Portal"<<endl<<endl;
cout<<" "<<detacno<<endl<<endl;
cout<<" "<<detn<<endl<<endl;
cout<<" "<<detactype<<endl<<endl;
cout<<" AVAILABLE BALANCE: INR "<<detamto<<endl<<endl;
Cont();
system("cls");
mainscr();
}
实际上,我试图询问用户输入的内容是否为1,这将向他们显示他们的帐户详细信息,然后返回mainscr(),如果输入内容相同,该情况将再次发生。
答案 0 :(得分:2)
您需要做一个前向引用,基本上是没有主体的函数的签名。
void mainscr();
void vdetails();
将那些放在实现之上(或者在相应的标题中更好),并且您的函数彼此了解