在使用STL和boost时,我一直看到名为“ detail”或“ impl”的文件夹。这些文件夹的用途是什么?你怎么知道这里的东西?
这些只是接口的私有实现吗?
这些文件夹的用途是什么?
这些只是接口的私有实现吗?
基本上是。在这里,Boost和标准库的实现通常将它们放置在它们公开的公共接口之外的东西中,但需要由公共接口的实现访问。
你怎么知道这里的东西?
这是一个很难回答的问题,因为它意味着您可以从外部查看,得出关于这些目录中应该包含什么内容的结论。您应该将这些目录视为“内部没有用户可维修的零件”的类似目录。您可以环顾四周,但永远不知道会发现什么,它甚至可能在Boost版本或C ++环境之间改变。
不建议在应用程序中直接在这些目录中使用头文件,这将导致不可移植的代码,即使对Boost或C ++编译器进行较小的升级也可能会破坏这些代码。
话虽如此,没有理由您无法在这些目录中进行浏览以了解东西是如何工作的!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句