- 博客(26)
- 资源 (68)
- 收藏
- 关注
原创 (P32)继承:多重继承 ,虚继承与虚基类 ,虚基类及其派生类构造函数
文章目录1.多重继承2.虚继承与虚基类3.虚基类及其派生类构造函数1.多重继承类图Bed类继承至Furniture类2.虚继承与虚基类当派生类从多个基类派生,而这些基类又从同一个基类派生,则在访问此共同基类中的成员时,将产生二义性——采用虚基类来解决。eg:P32\02.cpp中,SofaBed类应该只有一个weight_,也不应该有2个weight_虚基类的引入用于有共同基类的场合声明以virtual修饰说明基类class B1: virtual public BB等价于cl
2020-09-29 22:30:09 283
原创 (P31)继承:转换与继承 ,派生类到基类的转换 ,基类到派生类的转换
文章目录1.转换与继承2.派生类到基类的转换3.基类到派生类的转换1.转换与继承派生类对象也是基类对象。这意味着,在使用基类的地方可以用派生类来代替。eg:教师类继承至人类,那么教师也是人2.派生类到基类的转换派生类和基类谁大?基类比派生类的适用集合更大,派生类是基类的具体化当派生类以public方式继承基类时,编译器可自动执行的转换(向上转型upcasting安全转换)(1)派生类对象指针自动转化为基类对象指针基类指针指向某某,这样去理解(2)派生类对象引用自动转化为基类对象引用
2020-09-27 23:06:21 1007
原创 (P30)继承:不能自动继承的成员函数 ,继承与构造函数 ,友元关系与继承 ,静态成员与继承
文章目录1.不能自动继承的成员函数2.继承与构造函数3.友元关系与继承4.静态成员与继承1.不能自动继承的成员函数构造函数派生类要定义自己的构造函数,来对派生类成员进行初始化析构函数派生类要定义自己的析构函数,来对派生类成员进行清理工作=运算符2.继承与构造函数基类的构造函数不能被继承,派生类中需要声明自己的构造函数声明构造函数时,只需要对类中新增成员进行初始化,对继承来的基类成员的初始化 (需要调用基类的构造函数来完成)只要基类没有默认构造函数,基类的构造函数的调用只能在派生类的
2020-09-26 22:57:53 238
原创 (P29)继承:代码重用 ,继承 ,公有,私有,保护继承 ,默认继承保护级别 ,接口继承与实现继承 ,继承与重定义 ,继承与组合
第二种重用方式就是继承2.继承继承是使用已经编写好的类来创建新类,新的类具有原有类的所有属性和操作,也可以在原有类的基础上作一些修改和增补新类称为派生类或者子类,原有类称为基类或父类从形式上来看,派生类更大一些,从逻辑上,看派生类是基类的具体化派生类所表示的事务范围要比基类的事务范围要小的多eg:派生类和基类的关系3.公有,私有,保护继承公有,私有,保护成员(1)在关键字public后面声明,它们是类与外部的接口,任何外部函数都可以访问公有类型数据和函数(2)在关键字priva
2020-09-24 23:01:53 631
原创 (P28)map:map介绍 ,插入数据 ,查找与修改 ,删除
文章目录1.map介绍2.插入数据3.查找与修改4.删除1.map介绍使用map得包含map类所在的头文件#include <map>map实际上是一种关联性容器,基于<key,value>来存储的,是哈希表的变种,内部数据结构是红黑树(一种特殊的二叉树)定义一个map对象:map<string, int>可以看作是一个模板类,实例化一个模板类对象mapTestmap<string, int> mapTest;//用string作为索
2020-09-23 23:01:49 454
原创 (P27)vector动态数组:vector介绍 ,vector对象初始化 ,vector常用成员函数
文章目录1.vector介绍2.vector对象初始化3.vector常用成员函数1.vector介绍2.vector对象初始化3.vector常用成员函数
2020-09-22 21:33:16 484
原创 (P26)string:标准库类型,string介绍 ,string对象的定义和初始化 ,常用成员函数
文章目录1.string介绍2.string对象的定义和初始化3.常用成员函数标准库类型(1)string 字符串 对应char*(2)vector 动态数组 对应静态数组(空间不能扩展)(3)map key/value 内部是以树的形式存储的,时间复杂度是O(log2N),若内部采用的数组来存储的话就是哈希表1.string介绍string属于STL标准string类型(1)string类型支持长度可变的字符串,C++标准库将负责管理与存储字符相关的内存,以及提供各种有用的操作
2020-09-20 15:00:52 873
原创 (P25)运算符重载:类型转换运算符 ,->运算符 ,operator new、operator delete,new运算符的3种用法
文章目录指针运算符重载new有3种用法new operator:不能被重载operator new:可以被重载placement newTest* p1 = new Test(100); // 称作是:new operator,new operator = operator new内存分配 + 构造函数的调用利用VS2008,跟踪一下,按下F9,按下F11,调用operator new,传递了一个大小进来,当前类的大小是4个字节按下shift F11可以跳出这个函数,或者按下F1
2020-09-17 23:16:27 249
原创 (P24)运算符重载:[]运算符重载 ,+运算符重载 ,+=运算符重载 ,<<运算符重载 ,>>运算符重载
文章目录1.[]运算符重载2.+运算符重载3.+=运算符重载4.<<运算符重载,插入运算符5.>>运算符重载,提取运算符1.[]运算符重载有const版本和非const版本(nonconst)要以非const版本调用const版本,避免代码的重复,不应用const版本调用nonconst版本,因为const版本意味着不能修改对象的数据成员,而nonconst是可以修改的,尽管可以强制转换为nonconst,但是还是不够合理2.+运算符重载最好以友元的方式的重载,那么第
2020-09-16 23:18:40 681
原创 (P23)运算符重载:++运算符重载 ,!运算符重载 ,赋值运算符重载
文章目录整数类#pragma warning(disable:4996)//屏蔽VS2008中4096的警告29:51
2020-09-14 23:17:22 229
原创 (P21)友元:友元介绍 ,友元函数 ,友元函数注意事项 ,友元类 ,友元类注意事
文章目录1.友元介绍2.友元函数3.友元函数注意事项4.友元类5.友元类注意事项1.友元介绍友元是一种允许非类成员函数访问类的非公有成员的一种机制。可以把一个函数指定为类的友元,也可以把整个类指定为另一个类的友元。(1)友元函数(2)友元类,友元类的成员函数可以访问另一个类的所有成员,但是友元类的成员函数不是另一个类的成员函数2.友元函数友元函数在类作用域外定义,但它需要在类体中进行说明为了与该类的成员函数加以区别,定义的方式是在类中用关键字friend说明该函数,格式如下:fr
2020-09-13 22:22:19 607
原创 (P20)从一个实例看数据抽象与封装:用C的方式实现栈 ,用C++数据抽象的方式实现栈
文章目录1.用C的方式实现栈2.用C++数据抽象的方式实现栈1.用C的方式实现栈(1)入栈往栈中压入一个数据项的过程:初始状态:head——>NULL;栈的头指针head指向NULL生成一个新的节点node1,将node1的next指针指向头指针head指向的节点NULL,然后将头指针head指向新插入的节点,然后断开head——>NULL;再产生一个节点node2,让后让该节点的next指针域指向head指针指向的节点,然后将头指针指向新插入的节点,然后断开上面的head——>
2020-09-13 21:12:37 174
原创 (P9)awk:什么是awk,awk简单用法,awk脚本语法,awk执行过程
文章目录1.什么是awk2.awk简单用法3.awk脚本语法4.awk执行过程1.什么是awkawk 是什么awk 是一种用于处理数据和生成报告的编程语言awk 可以在命令行中进行一些简单的操作,也可以被写成脚本来处理较大的应用问题awk 与 grep、sed 结合使用,将使 shell 编程更加容易Linux 下使用的 awk 是 gawkawk 如何工作awk 逐行扫描输入 ( 可以是文件或管道等 ),按给定的模式查找出匹配的行,然后对这些行执行 awk 命令指定的操作。与
2020-09-11 23:58:02 922
原创 (P8)sed:什么是流编辑器sed ,sed地址定位方式 ,sed编辑命令
文章目录1.什么是流编辑器sed2.sed地址定位方式3.sed编辑命令1.什么是流编辑器sedsed是一个精简的,非交互式的流式编辑器,它在命令行中输入编辑命令和指定文件名,然后再屏幕上查看输出逐行读取文件内容存储再临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。原文件内容并没有改变。sed简单用法用法示例sed [options] sed_cmds files
2020-09-08 23:18:07 407
原创 (P19)对象的使用:const成员函数 ,const对象 ,mutable ,const总结
文章目录1.const成员函数2.const对象3.mutable3.const总结1.const成员函数const成员函数不会修改对象的状态const成员函数只能访问数据成员的值,而不能修改它2.const对象如果把一个对象指定为const,就是告诉编译器不要修改它const对象的定义:const 类名 对象名(参数表);const对象不能调用非const成员函数,因为会存在对对象修改的潜在风险3.mutable用mutable修饰的数据成员,即使在const对象或在
2020-09-08 22:54:32 206
原创 (P7)Linux文件权限:Linux用户类别 ,组管理 ,用户管理 ,权限管理
文章目录1.Linux用户类别2.组管理3.用户管理4.权限管理1.Linux用户类别Linux用户类别影子文件/etc/shadow的含义2.组管理/etc/group组管理命令3.用户管理用户管理命令eg:不仅将用户切换到了root用户底下,并且将环境切换成了root所对应的环境(还进行了环境的初始化):su - root4.权限管理Linux文件权限位Linux文件权限设置chmod文件夹下的文件进行递归更改:chmod -R
2020-09-06 22:05:43 144
原创 (P5)Linux文件系统:什么是文件系统 ,Linux文件类型 ,mount和umount ,硬链接 ,符号连接 ,硬链接和软连接的区别
文章目录1.什么是文件系统1.什么是文件系统文件系统是包括在一个磁盘或分区的目录结构文件系统是在一个磁盘组织文件的方法,eg:NTF3,FAT,System V,ext2,ext3
2020-09-06 18:30:54 498
原创 (P3)Linux基本命令:ls命令 ,linux目录操作命令 ,Linux文件操作命令
文章目录1.ls命令2.linux目录操作命令3.Linux文件操作命令1.ls命令总结eg(1)显示某目录下所有的文件及子目录的详细信息ls -lR /test(2)显示当前目录下所有文件详细信息ls -l2.linux目录操作命令总结eg:上面的-i选项的使用方法是:删除一个不存在的文件夹不是有提示-v:删除有提示信息cdcd -,表示回到上一次的目录3.Linux文件操作命令总结...
2020-09-06 17:59:22 196
原创 (P4)bash基础:通配符 ,输入/输出重定向 ,管道 ,后台作业 ,历史记录 ,命令补全 ,别名
文章目录1.通配符2.输入/输出重定向3.管道4.后台作业5.历史记录7.命令补全8.别名1.通配符简介最后一个不如直接使用 ls /dec/tty[12369],eg使用如下2.输入/输出重定向ls -l /usr/tmp > dirls -l /usr/tmp >> dirls /usr/tmp 2> err.filels /usr/tmp &> output.filewc < /etc/passwd3.管道将一个程序的标准
2020-09-06 17:36:20 235
原创 (P2)Linux基本操作:Linux登录,Linux简单的命令
文章目录1.Linux登录1.Linux登录文件方式登录(1)输入用户名和密码(2)/etc/passwd文件对照(用户文件)(3)/etc/passwd文件对照(影子文件)(4)启动相应的外壳程序(5)用户得到一个虚终端,通过shell与系统交互(6)进入到用户的家目录口令文件:/etc/passwd(1)username:用户名(2)passwd:密码,显示是x,已经转移到了影子文件中了(3)uid:用户标识号(4)gid:组标识号(5)comment:备注信息(6
2020-09-06 00:18:05 2130
原创 (P6)Linux最佳入门第6讲:Linux管理命令:df,du,free,ps,top,kill,killall,RPM ,文件备份:tar
文章目录1.df,du2.free3.ps4.top5.kill,killall6.RPM1.df,dudf(1)df -h,以直观的方式显示磁盘分区的使用状况sda1是boot引导分区sda2是/根分区,挂载到跟目录底下(2)df test,查询test属于哪个分区bin路径属于跟分区根路径地下的文件夹,未必属于跟分区boot文件夹属于boot分区,命名为sda1dudu etc目录的容量是15M,因为默认单位是KB(1)du -h etc(2)du -s(3)
2020-09-04 23:42:17 575
原创 (P18)对象的使用:static与单例模式 ,实现单例模式应该注意的点
只要你在类Test中的任何一个方法中,创建一个Test对象,你都能够随意访问类Test中任何成员以及方法;,而不是盯着对象看private,其他类不能访问该类对象的private成员。(3)禁止拷贝,如果是拷贝的,则不能确保整个程序只有一个对象。所以,一看对象,二看类,要访问对象的成员,先看对象所处的类!(1)保证一个类只有一个实例,并提供一个全局访问点。(1)要把构造函数私有化,让外部不能实例化对象。保证一个程序只有一个类的实例,只有一个对象。(2)需要提供一个静态的全局访问点。
2020-09-03 23:19:50 401
原创 (P17)对象的使用:static成员,static成员函数小结,四种对象的作用域与生存期
文章目录1.static成员小结1.static成员小结static成员独立于类对象而存在,也就是说它不属于某个对象的成员,它不能被全体对象所共享统计类类型对象创建的个数,用static成员来实现非static成员它属于类对象,每个对象都有一份拷贝static成员函数访问方式:通过类名,eg:A::statusFunc()来访问的,所以没有传递this指针,因而不能访问非static成员(因为非static属于某个对象,需要通过this指针来引用),也不能调用非static成员函数对象的作用域
2020-09-02 23:18:30 384
原创 (P16)对象的使用:static成员,static成员函数,类/对象大小计算
文章目录通过静态成员的方式来实现,统计当前创建的对象的个数14:02
2020-09-01 22:54:49 404
原创 (P15)构造函数与析构函数:深拷贝与浅拷贝,赋值操作,禁止拷贝,空类默认产生的成员
文章目录1.深拷贝与浅拷贝,赋值操作,禁止拷贝2.空类默认产生的成员1.深拷贝与浅拷贝,赋值操作,禁止拷贝eg:15cpp\15cpp\15cpp\01.cpp#include "String.h"int main(void){ //深拷贝与浅拷贝 String s1("AAA"); s1.Display(); String s2 = s1; //若自己没有实现一个拷贝构造函数, 则调用系统提供的默认的拷贝构造函数 // 系统提供的默认拷贝构造函数实施的是浅拷贝,等价
2020-09-01 22:25:47 433
Shell编程ppt[C++教程网cppcourse[1].com].zip
2020-05-06
跟我一起学C++.zip
2020-05-06
NetworkProgramming-master.zip
2020-05-06
muduo_server_learn.zip
2020-03-12
Docker学习资料总结.7z
2020-02-08
VS code的linux服务器端的离线安装教程
2019-11-09
Scientific.Toolworks.Understand.v4.0.811.Incl.Keygen-AMPED.zip
2019-09-07
vscode的remote ssh中需要的ubuntu服务器中的sshd配置文件
2022-06-19
postgresql数据库插件PG-Strom中Scan算子执行流程分析
2022-03-16
CUDAppt.zip
2021-12-28
cpptools-osx.vsix
2019-12-05
VSCode Cpptools最新版1.40.2版本.7z
2019-12-04
VSCode Cpptools.7z
2019-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人