学会思考
刻意练习
摘要: //例子:旋转方阵填充,要求矩阵大小任意,尺寸在运行时输入 设计思路:从上到下 int main() { cout > size; Matrix obj(size);//生成N*N矩阵 obj.fill(); cout 0 && _data[(row-1) * _size + col] == 0) row--; ... 阅读全文
posted @ 2017-04-11 23:57 Worty 阅读(1080) 评论(0) 推荐(0)
摘要: 一切都在变化,因此程序要适应变化; 变化分层 封装 接口与隐藏: 接口:类暴露出来的部分,是类所提供的功能; 隐藏实现的细节; UML类图 接口在哪儿? 设计思路:从上到下设计 实现类的接口 细化 阅读全文
posted @ 2017-04-11 23:28 Worty 阅读(901) 评论(0) 推荐(0)
摘要: 模板参数的具体化/特殊化 有时,有些类型不适用,则需要对模板进行特殊化处理,这称为“模板特化” 对函数模板,如果有多个模板参数,则特化时必须提供所有参数的特例类型,不能部分特化; 如: char *sum(char *,char *); 在函数名后用<>括号括起具体类型 template<> cha 阅读全文
posted @ 2017-04-11 22:45 Worty 阅读(475) 评论(0) 推荐(0)
摘要: 成员函数的模板: 普通类的成员函数,也可以定义为函数模板,如: class normal_class { public: int value; template<typename T> void set(T const &v) { value = int(v);//在类内定义 } template< 阅读全文
posted @ 2017-04-11 22:06 Worty 阅读(281) 评论(0) 推荐(0)