【发布时间】:2015-11-23 09:37:27
【问题描述】:
我刚开始使用 C++,但在安排功能时遇到了一些问题。
我在使用Unity(C#)的时候,是先写Start函数,然后根据调用的时间再写其他函数。
但是在这里,在 C++ 中,它看起来反之亦然!
例如,我在LearnCPP.com上学习时编写了这个简单的程序
#include <iostream>
void Add(int No1, int No2)
{
std::cout << No1 + No2 << std::endl;
}
void Subtract(int No1, int No2)
{
std::cout << No1 - No2 << std::endl;
}
void GetNumbers(int Operation)
{
int No1;
int No2;
std::cout << "The first no. : ";
std::cin >> No1;
std::cout << "The second no. : ";
std::cin >> No2;
if (Operation == 1)
{
Add(No1, No2);
}
else if (Operation == 2)
{
Subtract(No1, No2);
}
}
int main ()
{
while (true)
{
int Operation;
int TryAgain;
std::cout << "Enter 1 for an Addition Operation. Enter 2 for a Subtraction Operation." << std::endl;
std::cin >> Operation;
GetNumbers(Operation);
std::cout << "Enter 1 to try again. Enter 2 to exit.";
std::cin >> TryAgain;
if (TryAgain == 1)
{
}
else if (TryAgain == 2)
{
break;
}
}
return 0;
}
如果我打算用 C# 编写它,我会先编写 main(Start)函数,然后是 GetNumbers,然后是 Add 和 Subtract 函数。
如果我以这种方式用 C++ 编写它,我会得到错误(我使用的是 Visual Studio 2013 社区版)。
有什么办法可以做到吗?
提前致谢
【问题讨论】:
-
你遇到了什么错误?
-
你可以forward declare函数然后在
main函数之后定义它们的主体 -
@twentylemon 虽然知道一个人收到的错误通常很有帮助,但这是一种罕见的情况,问题是如此简单,以至于查看代码应该很容易向您展示问题(作为新的-to-C++ 程序员,OP 只是不熟悉)。
-
@mah 一切都在使用前声明...
-
@twentylem 是的,当他改变这个时,他得到了错误。他发布的代码是一个工作示例。重新阅读问题。
标签: c# c++ visual-studio function visual-c++