正如你所知道的,Boost有很多类型特征。C++11将其中一些引入了标准,例如is_pointer和is_base_of。
还有其他的,比如has_greater和has_greater_equal,C++11没有整合进来。为什么不行?是否有计划将它们包含在下一个标准中?标准委员会或Bjarne Stroustrup有没有关于这方面的论文?
发布于 2013-06-27 03:37:54
C++11于2011年8月获得批准。在2011年11月发布的1.48.0版本中,添加了操作员检测以增强类型特征。
我不相信任何人为C++14提出了它们,这现在已经冻结了。如果有人建议C++17使用它,那就太好了。
发布于 2013-06-27 03:07:30
我不知道这是否适用于S.O. (可能更适用于程序员?)无论如何,Boost和ISO是两个非常不同的东西。“标准”是指语言“是”什么,它包含了为任何目的描述语言所需要的东西。Boost是一个“扩展”特定问题功能的库。
Boost委员会对代码的“质量”(而不是其主题)进行操作,标准对“分布”(假设质量给定)进行操作。并不是所有“好”的东西都是“普通”的。当boost被发现足够普遍时,它所做的事情就会出现在标准中。而不是像boost那样去做。它以编译器发行商必须满足的规范的形式出现。
Boost是以许多编译器都可以使用的方式编写的。标准库的编写方式是,它附带的编译器(或它附带的编译器系列)能更好地处理它(实际上有一个数字,因为编译器系列可能在那里)。这种优化和最终的低级别调整是不同的。
事实上,一些boost库成为标准的一部分并不是一个自动的结果。这只是一个巧合的问题,在几乎任何代码中都需要一些“好想法”。
也就是说,你的意图不一定是错的:它可能会发生在你问的特定主题上。但是没有从boost到标准的“迁移过程”,也没有在boost之前需要的标准前提条件。
https://stackoverflow.com/questions/17328152
复制相似问题