为什么maxCheckStartPosition被设计成这里的指针呢?
这个变量被用作搜索限制,我不认为它在Open()期间会被更改的任何原因。
此外,我还对整个库进行了打招呼,我看不到任何Archive接受该变量的所有权/更改。
这个设计决定在我看来真的很奇怪。
p7zip_9.20.1/CPP/7zip/Archive/IArchive.h:
STDMETHOD(Open)(IInStream *stream, const UInt64 *maxCheckStartPosition, IArchiveOpenCallback *openArchiveCallback) x; \发布于 2016-02-24 03:53:37
我看不出有什么理由在Open()期间改变它。
除了找不到任何原因之外,从合同上看,如果是这样的话,这将是一种未定义的行为。它的标签是const (写成这样,这是指的东西是康斯特.而不是指针)。
为什么maxCheckStartPosition被设计成这里的指针呢?
不知道具体动机:
https://stackoverflow.com/questions/35592771
复制相似问题