在boost file_sink类中延迟打开调用

时间:2014-03-12 13:23:11

标签: c++ boost

函数foo()在每次调用时从文件返回5个字节。如果使用 file_sink 类,则每次调用foo()时都必须打开该文件。一种方法是在头文件中将file_sink声明为私有,然后在构造函数中调用file_sink上的open,并在每次调用foo()时调用read w / o每次都需要open()。但这似乎是不可能的,因为file_sink构造函数需要文件路径。如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

在头文件中有一个file_sink指针,在构造函数中将其初始化为NULL,并且foo第一次创建file_sink(带有文件名)。< / p>