【发布时间】:2011-08-09 14:43:27
【问题描述】:
假设我想为optional<T> 类模板重载operator<<。我将如何打印“缺失值”,以及如何打印“真实值”x?
none
some x
或
[]
[x]
或者我应该在第一种情况下不打印任何内容而在第二种情况下打印x?这通常是如何处理的?
【问题讨论】:
-
我认为没有一般规则(这将取决于上下文)。当用于调试目的时,我会标记打印某些内容的事实(即
[]或none或<empty>,确保不会混淆但不是空字符串)
标签: c++ string printing operator-overloading optional