来自Dr. Dobbs:
概念应该是核心 C ++ 0x中的新功能
即使在削减了“概念”之后 下一个C ++标准可能会延迟。 可悲的是,没有C ++ 0x(除非 你算上一些微小的修正 C ++ 03)。我们必须等待C ++ 1x,和 希望'x'是一个低位数。 有希望,因为C ++ 1x现在 功能完整(除了 一些国家标准的可能性 有效地坚持一些人的身体 正式提案中的特征 为标准)。剩下的“全部” 是解决的大量工作 杰出的技术问题和 评价。
我在1997年至2000年间处于MT和MP安全C ++编程的最前沿。我们自己必须做很多事情。令人震惊的是,该标准在9年后没有解决并发问题。
那有什么大不了的?
答案 0 :(得分:13)
没有。
我不确定是什么让你觉得它是。 Dr.Dobbs的文章并不意味着就是这种情况。
这是一个很大的更新,这意味着需要进行大量的工作来完善语言规范并修复错误。这既不新鲜也不令人惊讶。
ISO标准化过程需要时间。这也不是新的。你发表的那篇文章说的是 - 有工作要做,但天空并没有下降,这是他们从现在开始做的非常基本和低风险的工作。
为什么花了这么长时间有几个原因:
显而易见的是,他们正在做出很多改变,而且一些功能比预期的要大,而且必须削减。这是不言而喻的,并且是造成延误的原因。
不太明显,但同样重要的因素是他们想要从C ++ 98开始经过很长时间。他们希望让语言有时间稳定和成熟,通过当前语言功能获得大量使用经验,并让编译器有时间赶上。直到几年前,C ++还没有准备好进行更新。大型商业编译器仍然是一团糟,太多人仍然不熟悉现代C ++设计。
这就是为什么直到现在才解决多线程之类的问题。它没有在C ++ 98中实现,并且他们不希望在此之后很快进行更改。
我不知道他们原本希望在哪一年定位,但我怀疑它早于2007年左右。所以,是的,新标准已被推迟一点,但不是因为语言“崩溃”。
答案 1 :(得分:10)
Stroustrup是最终删除Concepts的选民之一。我没有看到C ++ 崩溃,而是看到C ++委员会正在履行其职责。半生不熟的功能不是像C ++这样强大的语言的解决方案。看一下C ++ 0x中的内容会告诉你与你说的相反。最后,我不介意等待永远好的东西,而不是一段时间好的东西:)
答案 2 :(得分:3)
不,他们只是意识到他们的责任。有很多人受到标准委员会决定的影响。
答案 3 :(得分:1)
一方面我很感激他们没有重复模板输出惨败
另一方面,同样的“责任”可能会在模板发生之前完全杀掉模板。
我认为C ++ 0x证明C ++是一种过于成熟的语言,无法继续尝试功能。新的尖端功能已经出现在其他语言中,它们更符合基本理念。