感觉你知识学杂了。
std::function还沾点边。解决函数是first class的问题
constexpr重点是编译期计算吧,减少运行期开销。
auto是为了类型推断,类型系统里问题。
concept也是类型系统,静态类型约束。
泛型编程也是类型系统,解决类型抽象的问题,是在算法抽象后的继续抽象。
回调是执行模型的问题,co wait打破了结构化程序的约束(for while 函数作为基本单元 早期叫procedure/routine,先有routine,再有co routine),换一种面貌出现。本质是函数不再是完整block,可以执行一半hang住,然后resume。所以一般人驾驭不了。
结构化程序是dijkstra?的主要贡献。后面还有形式化程序,一直没证明成功?
酒后凭感觉写一点。供批判。
【 在 hgoldfish 的大作中提到: 】
: 从回调函数出发,搞了 std::function<>, constexpr, auto, concept 等用于描述函数的特征。还有各种泛型编程的,都是为了代替虚函数,而虚函数本身又是回调函数的一种抽象。
: 所以回调真是万恶之源。如果没有回调,早点发明 co_await() 说不定就没有后面这么多事情了。
--
修改:DoorWay FROM 61.185.195.*
FROM 61.185.195.*