复习难点突破
文章平均质量分 76
Diligent_wu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++特性:多态、重写
多态概念通俗来说,多态就是多种形态,具体点就是去完成某种行为,不同的类去完成就会产生不同的形态。比如一个Active方法,包含了吃、走、爬、飞等行为,当调用这个方法,蜗牛就是爬,鸟就是飞。class Base{ virtual void fun(){} virtual Base* fun(){} //重载,也是重写的例外之一 virtual ~Base() //重写的例外之二}class D : public Base{ virtual void fun(){} /原创 2022-04-11 20:13:53 · 1387 阅读 · 1 评论 -
C++特性:继承
导语:C++是对C语言的优化和改进,C++之所以优秀的点在于它的特性:抽象、封装、继承和多态。本章总结继承的规则和特性,都是干货,与读者共同学习。继承作用代码的复用子类继承父类,可以理解为,将父类的代码拷贝一份到子类中,达到子类可以调用父类方法的目的。那为什么是可以理解而不是就是呢?是因为有几个东西是不可以拷贝的,比如,父类的拷贝和析构方法,友元和静态成员。友元关系是不能继承的,必须各是各的。静态成员是在类外初始化的,从定义到程序运行结束都一直存在,不是属于某一个类的。所以也不能拷贝。形原创 2022-03-20 20:23:14 · 562 阅读 · 0 评论 -
C++智能指针详解
注:源码剖析在代码注释展现了解智能指针头文件 #including< memory >版本 VC版本自动指针auto_ptr VS版本自动指针auto_ptr boost库的六种智能指针 局部指针: scoped_ptr、scoped_array 共享计数器指针: shard_ptr、scoped_array 弱指针: weak_ptr 侵入式引用计数指针: intrusive_ptr C++11参考boost实现的: we原创 2022-03-19 16:42:42 · 320 阅读 · 0 评论 -
C++内存管理,const、mutable、static、编译过程
回答问题可以的。变量修改的本质是存储空间中的数据被改变,我们通过变量名、指针等方式改变数据都是找到数据的存储位置,对存储空间进行操作。换句话说,空间的存储位置决定了一个变量能不能被修改。局部变量存放在栈区,程序运行完毕释放内存。而加了const修饰之后,,我们不可以使用变量名对这块内存进行修改,却可以通过其他方式对修改内存从而达到对变量的修改。全局变量存放在数据段,加const修饰之后,存放在只读数据段,是无法对内存进行操作的。所以一个数据能不能被修改,还是看它存放的位置。变量名和变量我们首原创 2022-03-16 21:38:52 · 2229 阅读 · 0 评论 -
仿函数、lambda表达式
仿函数c++中的很多算法方法都用到仿函数的传递,比如std中的sort方法,可以对一个数组中的元素进行排序,其中排序的规则可以自己制定,这个排序的规则就是通过仿函数传递的。int main(){ int array[] = {4,1,8,5,3,7,0,9,2,6}; // 默认按照小于比较,排出来结果是升序 std::sort(array, array+sizeof(array)/sizeof(array[0])); // 如果需要降序,需要改变元素的比较规则 std::sort(arra原创 2022-03-14 13:37:15 · 1065 阅读 · 0 评论 -
引用、右值引用、万能引用、移动语义、完美转发
引用归纳一下引用的考点:1.概念引用是给已存在的变量取别名,与引用的变量公用同一块内存空间int &ra = a;对ra取地址,和对a取地址一样。2.特性1.定义时必须初始化2.一个变量可以有多个引用3.一单引用一个实体,就不能再引用其他实体。3.常引用记住一句话,权限只能缩小不能放大。普通变量是可读可写的,cont修饰的是只读的。4.效率(和传值相比)具体情况具体分析。返回值 传值和传引用函数的参数 传指针和传引用5.和指针的区别原创 2022-03-14 13:06:18 · 1516 阅读 · 0 评论 -
http和ftp协议的区别
项目中应用到ftp,将ftp的笔记上传一下。简单的说:HTTP是Hyper Text Transfer Protocol,超文本传输协议;面向网页的。FTP是File Transfer Protocol,文件传输协议;面向文件的。(soap的默认端口号8880,ftp的代理服务器的默认端口号是21)1.FTP(1)FTP比HTTP复杂FTP和HTTP一样都是Internet上广泛使用的协议,用来在两台计算机之间互相传送文件。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到原创 2022-03-13 13:19:26 · 9477 阅读 · 0 评论 -
结构体内存对齐
内存对齐规则普通结构体struct STUDENT{ char name[10]; int age; char sex; float score;}data;含有虚函数的类class Test{public: Test(){} virtual void func(){} virtual int* func1(){} ~Test(){}private: char a; int b; double c;}我们只要知道,类的成员才是类的,原创 2022-03-11 07:48:08 · 1098 阅读 · 0 评论 -
复杂指针解析
复杂指针解析因为C语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相反的。右左法则的英文原文是这样说的:The right-left rule: Start reading the declaration from the innermost parentheses,转载 2022-03-07 17:54:03 · 432 阅读 · 0 评论
分享