我正在开发一个项目,我需要编写一个函数来将一个图像插入到另一个图像之上。我们称之为插入和原始图像(原始图像是要插入的图像)。我正在使用C ++ fstream。
所以我需要读取插入图像并将其写入原始图像。两个文件流都是开放的,是否有任何非正式标准说我不应该这样做,即打开两个文件 - 从1读取并写入另一个?
答案 0 :(得分:1)
如果您正在通过不同的流对象读取您正在编写的同一文件,则实际结果将是实现定义的。您最终可能会覆盖尚未阅读的部分文件,从而破坏您的输入。
实现此目的最便携的方法是将新内容写入具有不同文件名的新文件中,然后在整个过程完成后关闭这两个文件,将新文件重命名为原始文件名。 / p>