使用'\ n'打印

时间:2009-10-27 03:56:35

标签: c++ inheritance operators operator-overloading

我很确定你们所有人都熟悉Big4的概念,并且我在构造函数,赋值,析构函数和复制构造函数中都有几个要做的事情。

限制是:

我不能在任何方法中使用多个换行符(例如,ƒn或std :: endl)

我可以有一个名为print的方法,所以我猜印刷是我将放置那个珍贵的而且只有'\ n'的地方,我的问题是该方法如何打印在每个元素上打印不同的东西我想要在每个Big4中打印?任何的想法?也许重载Big4?

3 个答案:

答案 0 :(得分:1)

也许我完全不理解这个问题,因为它被问得相当笨拙,但是你不能只有一个叫做换行的函数接收一个ostream作为参数,然后简单地将'/ n'输出到那个输出流?然后你可以无限次地调用它,同时仍然遵守任意的“一条新线”规则。

e.g。

(编辑:删除代码,“闻起来像家庭作业”)

答案 1 :(得分:1)

print应该包含一个包含要输出到屏幕的信息的参数(sans'\ n'),然后调用c ++输出方法,并在内联中将'\ n'附加到传入的信息中。

注意:没有代码'因为这对我来说有点像家庭作业......

答案 2 :(得分:0)

我不确定我完全理解你想要完成的事情。为什么你只能使用一个换行符?是什么让你只用一个新行编写代码很困难?例如,我之前做过这样的事情。

for(int i = 0; i < 10; i++) {
    cout << i << " ";
}
cout << std::endl;

如果您需要更复杂的东西,您可能需要制作某种打印跟踪器对象,以保留是否已打印换行符的标志,并相应地调整其行为。这似乎有点过于复杂了。

相关问题