我想为 C++ 文本输出流提供类似选项卡的功能。该功能应该允许我说“注意这个位置”,然后允许多次插入操作,最后允许我说“添加足够的填充字符以便结束N
字符超过最初记录的位置”。
标准iostream
系统似乎没有保持列位置,但我认为我可以使用tellp()
. tellp()
我的假设是我的输出序列中两点之间的差异将对应于中间字节的数量。
不幸的是,至少在我的 Gnu C++ 环境中,cout
并没有保持流位置的虚构。每次cout.tellp()
通话returns -1
。这是为什么?