【发布时间】:2018-09-11 05:26:03
【问题描述】:
当我阅读 cppreference 上的 bitset page 时,我试图找到一些 data memeber 列来查看数据是如何存储的。我发现没有这样的列,也没有另一个 std 类,例如std:string。然后我转到https://github.com/llvm-mirror/libcxx/blob/master/include/bitset,查看bitset synopsis 注释部分,我找不到任何关于它的数据成员的信息。为什么?我在这里想念什么?非常感谢任何 std 类的示例。
【问题讨论】:
-
因为它们是私有的,所以您不需要知道它们?它们不是界面的一部分。
-
在这里了解您的动机可能会有所帮助。我不认为这些类的私有实现很重要,所以你只是好奇还是你想摆脱它?
-
@Tas 只是出于好奇。当我试图理解一个类时,我通常会先检查它的数据成员。
-
@Rick:你应该停止这样做。如果你想了解一个类,首先看它的文档,而不是它是如何实现的。查看它提供的接口,而不是它隐藏的接口。
-
@NicolBolas 这就是理论,在实践中,人类的思维通常从具体到抽象,而不是相反。查看实现通常有助于了解您实际处理的内容并修复标准在内存中提供的保证,而反过来则需要向内存发送大量明显随机的规则。深入了解如何实施 IMO 标准容器对于直观了解如何有效使用它们至关重要。
标签: c++