随笔分类 -  面向对象

摘要:一、面向对象的概念 面向对象的本质是用人类理解的方式去架构数据和方法之间的关系。面向对象的方式由于采用人类理解的方式,有利于开发人员去设计架构,还有利于其他程序员阅读和记忆你的架构。 但是站在编译器的角度,面向对象的代码会带来代码层级增加,软件的复杂度反而会上升。 阅读全文
posted @ 2020-04-04 14:06 天凉好个秋秋 阅读(149) 评论(0) 推荐(0)
摘要:坏耦合的原因 1. 依赖他人 例1. void SaveMoney(float money); void WithdrawMoney(float money); 如果有假币出现,那么存钱函数SaveMoney就提前处理了,并不会存进去,WithdrawMoney函数从来没有遇到过假钱,而它并没有处理 阅读全文
posted @ 2020-02-20 15:04 天凉好个秋秋 阅读(313) 评论(0) 推荐(0)
摘要:强化耦合 1.将隐式的关系变成显式的关系 例如:在界面的不同位置要显示不同的图形,位置和图形是一对一的关系,于是代码如下: for(int i = 0;i<count ;i++){ Draw(Shape[i], position[i]); } 分析: 因为连个数组元素之间的对应关系,并没有得到正式承 阅读全文
posted @ 2020-02-19 14:01 天凉好个秋秋 阅读(209) 评论(0) 推荐(0)
摘要:什么是耦合 我们总是听到说这有耦合,那要解耦。耦合看起来很高大上的名词,实际上耦合代表的就是各种元素之间的依赖性和相关性。 耦合的种类 数据之间的耦合;例如: class Person{ string name; int age; } name和age属于同一个类里面,他们就产生了耦合 函数之间的耦 阅读全文
posted @ 2020-02-19 12:19 天凉好个秋秋 阅读(599) 评论(0) 推荐(0)
摘要:一、O(nlogN)和 O(n^2)的时间效率对比 二、归并排序的实现过程 过程:分组,组内排序 法一:递归实现 //将arr[l...mid]和arr[mid+1...r]两部分进行归并template<typename T>void __merge(T arr[],int l,int mid,i 阅读全文
posted @ 2020-02-15 15:39 天凉好个秋秋 阅读(143) 评论(0) 推荐(0)
摘要:一、选择排序 //选择排序 O(n^2) void selectSort(int arr[],int n) { for(int i = 0;i < n; i++){ int minIndex = i; //寻找 [i,n]的最小值 for(int j = i + 1; j < n; j++){ if 阅读全文
posted @ 2020-02-14 14:57 天凉好个秋秋 阅读(245) 评论(0) 推荐(0)
摘要:1.定义 运算符重载是通过创建运算符重载函数实现的。运算符重载函数来实现的。运算符重载函数可以是类外定义的普通函数,也可以是类的成员函数或友元函数。 第一种方式 1 Complex operator+(Complex om1,Complex om2){ 2 Complex temp; 3 temp. 阅读全文
posted @ 2020-02-13 22:48 天凉好个秋秋 阅读(203) 评论(0) 推荐(0)
摘要:1.多态性 用一个名字定义一个不同的函数,这些函数执行不同却相似的操作,这样就可以用同一个函数名调用不同内容的函数。 2.程序的实现 一个源程序经过编译、连接,成为可执行文件的过程是把可执行代码联编在一起的过程。其中运行之前就完成的联编称为静态联编,而在程序运行时才完成的联编叫动态联编。 静态联编是 阅读全文
posted @ 2020-02-12 22:42 天凉好个秋秋 阅读(1423) 评论(0) 推荐(0)
摘要:1.使用原因 类的私有成员只能通过它的成员函数来访问。但是有的时候需要类的外部访问类的私有成员(或者保护成员)。为此,需要一种途径,在不放弃私有成员数据安全性的情况下,使得一个普通函数或者类的成员函数就可以访问某一类中的私有、保护成员。 c++中的友元为数据隐藏这堵不透明的墙开了一个小孔,外界可以通 阅读全文
posted @ 2020-02-12 16:09 天凉好个秋秋 阅读(249) 评论(0) 推荐(0)
摘要:1.模板的概念 c++允许同一个函数名定义多个函数,这些函数的参数个数和参数类型不同。在c++中,确实可以通过重载这些函数使他们有相同的函数名。但还是不得不为每个函数编写一组代码。模板是实现代码重用机制的一种工具,他可以实现代码参数化,即把类型定义为参数,从而实现了代码的重用。 2.函数模板 在te 阅读全文
posted @ 2020-02-12 11:06 天凉好个秋秋 阅读(147) 评论(0) 推荐(0)
摘要:final: 修饰方法和类不能被基础,不能被覆盖; 阅读全文
posted @ 2018-10-19 11:03 天凉好个秋秋 阅读(187) 评论(0) 推荐(0)