gpt4 book ai didi

c++ - 如果最后一行不相等则追加

转载 作者:行者123 更新时间:2023-11-30 05:04:15 24 4
gpt4 key购买 nike

我想编写一个函数来执行此操作:给定一个文件和一个名称(字符串),如果最后一行不是“名称”,则附加到文件(如果文件不存在则创建文件)。否则就什么都不做。我当然可以创建这样的函数:

appendIfLastLineNotEqual(file fd, string name) { ... }

但是,这将很难编写单元测试,因为它会转储到文件中。有没有一种更简洁的方法可以做到这一点,并且易于进行单元测试?我也可以做文件向后解析等来实现这个功能。有什么聪明的方法可以代替读取文件、与最后一行进行比较等吗?谢谢!

最佳答案

如果您可以使用流作为函数的输入参数,那么您的代码将适用于您提供的任何流。

您可以使用 std::fstream 作为生产代码的输入,而不是使用 std::sstream 甚至在您的单元中创建您自己的流模型测试代码。

关于c++ - 如果最后一行不相等则追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48982279/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com