0

我正在介绍学习 C++ 的计算机科学课程。我们当前的项目涉及输入该人拥有的银行账户类型(商业或个人),并为两者采用不同的路径。我发现这会导致我编写两个输出函数,一个用于每种不同类型的帐户。

有没有办法让我编写 1 个输出函数,但让它根据他们选择的帐户类型输出信息?

例如,我想的是给每个选择一个数字。此示例将是个人为 0,商业为 1。当他们输入将数字 1 或 0 分配给变量的类型时,我输出的每个变量都将基于 if 语句,如果 X 等于 1 则输出Y 如果不输出 Z。

任何帮助将不胜感激,如果不清楚,我可以提供有关该项目的更多信息。

谢谢。

4

2 回答 2

1

帮助您入门的模板:

enum AccountType { Checking, Savings };

void Output( AccountType userAccount )
{
  switch ( userAccount )
  {
     case Checking:
     // do something here for checking accounts
     break;
     case Savings:
     // do something here for savings accounts
     break;
  }
}

当然还有其他方法,但这很容易理解。

于 2013-10-29T17:24:41.770 回答
0

是的,当然有这样的方法可以做到这一点。无需为 CommercialAccounts 和 PersonalAccounts、继承等创建单独的类,您可以这样做

#define COMMERCIAL 0
#define PERSONAL 1

void printAccount(int account_type /* add parameters for the actual account data */) {
  switch(account_type) {
  case COMMERCIAL:
    // do stuff...
    break;
  case PERSONAL:
    //do stuff...
    break;
  default:
    std::cerr << "Error: " /* invalid input error message */ << std:: endl;
  }
}
于 2013-10-29T17:25:31.313 回答