我只编写一个标题matrix3x3实现,我希望它是独立的,不依赖于其他标题,除了我也写过的vector3标题。
目前,我希望它能够超载ostream<<运营商,但我不想在其中加入 iostream 。
是否有可能使重载成为可选项并且如果包含 ostream ,并且如果不包括其中所有其余的工作正常而没有过载?
我考虑过检查是否包含 ostream 标头但是它有一个主要缺陷的可能性,因为如果在matrix3x3标头之后包含 iostream 它将无法正常工作。
编辑: 我已经用 ostream 替换了 iostream ,因为我认为它对问题的重点产生了一些混淆。
答案 0 :(得分:1)
为什么不使用<iosfwd>
?
示例:
047126002/047126003/047126004/047126005, 047016064, 047033008,
047265002, 047325004, 047265004, 047265003, 047033010,
047082004/047082005, 047058002, 047016030, 047320007, 047313005, ...
请注意,无法在您自己的代码中安全地转发声明标准类。相关问题: