摘要:
派生类中存在和基类中同名成员(函数和属性),虽然派生类继承了基类中的成员,但基类的成员会被派生类的同名成员覆盖,直接用子类对象调用同名成员会默认调用子类的成员。 若需要调用基类成员,可以显式调用: 派生类对象. 基类::成员名。 #include <iostream> using namespace 阅读全文
摘要:
一元运算符常用的有: 前置++、后置++、前置--、后置--; 为将前置与后置的函数区分开,C++规定: 前置: operator++(temp& t1); 后置:operator++(temp& t1,int i);//int i是编译器为了与前置++函数区分开,添加的一个无用的形参 同理:前置- 阅读全文
摘要:
运算符重载是C++编译器提供给程序员自定义数据类型参与运算的机制。 二元运算符重载:即参与运算的元素为两个,如+,-; 运算符重载的方法有两种: (1)将重载函数写为类的内部函数; (2)将重载函数写为全局函数,友元机制的体现; 程序员要注重从最终的调用表达式逆推重载函数的实现方法: (1)以+运算 阅读全文
摘要:
1.常变量,即const对象 const int a; //a中的值不可变 const int * b; //b所指的对象的值不可变,但是b的值可变 2.常指针,即const指针 int* const c; //c是一个常量指针 3.既是常变量还是常指针 const int* const a;//指 阅读全文
摘要:
指针和引用均可以间接地改变另一个值,它们的区别有二: (1)引用始终指向某个变量,所以引用声明时需要定义; (2)给引用赋值,直接改变变量的值,而并非是引用指向了另一个变量,这与指针不同,指针当左值并与解引用符配合时,改变的是所指变量的值,如果没有解引用符号,则是使指针指向了另外一个地址。 阅读全文
摘要:
基本的查找算法有:顺序查找,二分查找, 顺序查找很简答,就是遍历数组的每一个元素,通过与待查找到数进行比较来实现,一个for循环即可搞定。 顺序查找不需要对数组进行排序,缺点是执行效率低,耗时,因为要遍历。 二分查找是一个提高查找效率的方法,前提是数组有序,如果拿到一个无需的数组,首先要用排序算法( 阅读全文
摘要:
基本的排序算法有:冒泡排序、选择排序、插入排序 冒泡排序:对于容量为n 的数组,需要n-1次循坏,每次循环中从第一个元素开始,与后面的元素比较,如果第一个元素比第二个元素大,则就交换它们的位置。以此类推,最终将最大的元素放在数组的末端。 选择排序:简单地说,对于一个无序的数组,先默认第一个元素为最小 阅读全文
摘要:
说到指针,绝对是C语言中当之无愧的老大哥。很多人觉得指针很神秘,是真的吗?其实不然。 C语言是一门非常适合底层开发的高级语言,原因就在于它有指针。 指针,说白了它就是内存中的某个字节的地址,就像你的家庭住址,我们只是常说成籍贯。 所以:指针==地址。 揭开了指针的面纱后,是不是觉得豁然开朗。接下来, 阅读全文