C ++简单程序实现

时间:2012-10-27 09:41:44

标签: c++

我需要你的帮助才能开始实施良好的实施思路。

我需要使用以下内容创建一个简单的程序: 1.具有两个参数的函数,第一个参数是名称(char *),第二个参数是您要将此名称打印到屏幕(int)的次数。 如果函数调用中未提供第二个参数,则应将名称打印10次。 如果函数调用中没有提供第一个参数,它应该打印作者姓名/程序的作者(即我的名字)。

我正在考虑使用默认参数创建以下函数:

void printTextToScreenNTimes(char * text = "guy", int n = 10);

此功能实现如下:

void printTextToScreenNTimes(char * text, int n) {
  int i;
  for (i = 0; i < n; i++)
    cout << text << " ";

}

当我尝试打印默认名称2次时出现问题。例如,如果我只想使用以下函数调用:

void printTextToScreenNTimes(3);

我希望函数能够打印默认名称(在本例中为“guy”)3次,但这是不可能的,因为我必须填写第一个参数。

除了使用保存我姓名的全局参数外,我别无选择吗?

2 个答案:

答案 0 :(得分:4)

重载:

void printTextToScreenNTimes(int x)
{
    printTextToScreeNTimes("guy", x);
}

答案 1 :(得分:0)

我认为你正在阅读过多的要求。我认为关于不提供名称的第二部分仅适用于第一部分(不提供计数)也适用。

但无论如何,你可以使用重载来解决它,就像Luchian刚才解释的那样。