🔴 两条路各适合什么场合
论"错误发现得早"和"改起来快",说法对的是【0】。
C++ 那边:能不能用,编译期就问清楚
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)🔴 这一节把同一件事在两种语言里各做一遍:**C++ 靠模板在编译期定死,Python 靠鸭子类型在运行期试**。每道题的 code_language 不一样,注意
🔴 Python 那边:跑到那一行才知道
(这一段是 Python 3) # Python 这一路:能不能用,**跑到那一行**才知道 def twice(x): return x + x a = twice(5) b = twice("ab") b
C++ 那边:把线问出来
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)🔴 这一节把同一件事在两种语言里各做一遍:**C++ 靠模板在编译期定死,Python 靠鸭子类型在运行期试**。每道题的 code_language 不一样,注意
🔴 Python 那边:错要跑到才抓得住
(这一段是 Python 3)None 不支持 +。
交付一个泛型组件,最该先确认什么
写完一个模板组件,第一件该确认的事是【0】。
⚠️ 一个泛型组件的验收,要看几类
要说一个泛型组件能交付了,至少得验【0】。
一个完整的泛型组件
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)一个泛型容器 + 一个泛型算法: #include <iostream> #include <string> #include <typ
第一步:把泛型容器写出来
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)两种类型都要能用。
⚠️ 第二步:加一个只对数字开放的方法
(本条路线统一用 g++ -std=c++17 -O0 -Wall 编译)Bag<std::string> 还得能用(只是不能求和)。