我正在查看C++ 0x的计划,并std::initializer_list在用户类中实现初始化列表.如果不使用它本身,或者使用一些"编译魔术",这个类就不能用C++实现.如果可以,则不需要它,因为您实现的任何技术initializer_list都可用于在您自己的类中实现初始化列表.
还有哪些类需要某种形式的"编译魔术"才能工作?标准库中哪些类无法由第三方库实现?
编辑:也许不是实现,我应该说实例化.事实上,这个类与语言功能直接相关(你不能使用初始化列表initializer_list).
与C#进行比较可能会清除我想知道的内容:IEnumerable和IDisposable实际上是硬编码为语言功能.我一直认为C++是免费的,因为Stroustrup试图让所有东西都可以在库中实现.那么,是否有任何其他类/类型与语言功能密不可分.