提供对输入流的受限视图

时间:2018-08-09 22:23:56

标签: c++ io

我正在为ELF文件设计一个解析器,该解析器定义了命名部分,将其分成具有各自偏移量和大小的片段。

我想使用标准库的<iostream>工具为所有类提供标准化接口。大多数时候,仅加载ELF文件的某些部分,因此将整个文件加载到内存中并向解析器传递缓冲区是浪费的。取而代之的是,它应该接受哪种输入? std::istreamstd::streambuf,文件名或其他名称?

此外,其中一些部分可能会很大,因此当库的用户要求特定部分时,我不想返回缓冲区。理想情况下,我想提供“受限流”,以便用户代码只能访问他们请求的ELF文件的部分。此外,在此受限视图内的搜索/告诉会更正其在文件内的偏移量。

在保持与接受流的函数的兼容性的同时,如何构造此代码?

0 个答案:

没有答案