
C++学习笔记
口口lv
计算机视觉
展开
-
C++学习笔记(12):对象数组与对象成员
文章目录1 对象数组1.1 概念1.2 示例 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1074555311 对象数组1.1 概念现实中,只实例化1个对象通常不够用,需要实例化多个对象,可以通过对象数组来实现。Coordinate coord[3]:栈的实例化方式,用".“调用;Coordinate *p = new Coordinate[3]:堆的实例化方式,用”p[].“或”p->"调用,一定要用原创 2020-07-23 23:22:10 · 468 阅读 · 0 评论 -
C++学习笔记(11):对象的生离死别
文章目录1 对象结构1.1 内存分区1.2 实例化的对象如何在内存中存储的?2 构造函数2.1 对象初始化2.2 构造函数2.2.1 构造函数的规则和特征2.2.2 构造函数的定义2.2.3 默认构造函数2.2.4 构造函数初始化列表初始化列表的特性初始化列表存在的必要性哪几种情况必须用到初始化成员列表?参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1073075571 对象结构1.1 内存分区栈区:内存由系原创 2020-07-21 11:09:33 · 332 阅读 · 0 评论 -
C++学习笔记(10):类内定义和类外定义
文章目录1 类内定义2 类外定义2.1 同文件类外定义2.2 分文件类外定义2.2.1 类的声明和实现分开的好处2.2.2 分文件类外定义示例参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1072406071 类内定义类内定义:在类的内部定义成员函数,如下图所示:编译器会将简单的类内定义函数优先编译成内联函数,不会写出inline,但会用inline的方式优先编译。对于复杂的成员函数,则编译为普通的函数。原创 2020-07-21 11:02:21 · 2820 阅读 · 0 评论 -
C++学习笔记(9):数据的封装
文章目录1 面向对象的思想2 封装的好处3 示例 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1072377501 面向对象的思想上图的写法违背了面向对象的基本思想。面向对象核心思想:以对象为中心,即以“谁做什么”来表达程序的逻辑。体现到代码层面:将所有的数据操作转化为成员函数的调用,即对象在程序中的所有行为都通过调用自己的函数来完成,如下图所示:2 封装的好处如上图所示,年龄一般不可能超过1000。在输原创 2020-07-21 10:53:59 · 213 阅读 · 0 评论 -
C++学习笔记(8):封装—类和对象
文章目录1 类与对象的定义2 封装3 访问限定符4 对象实例化4.1 实例化对象的方式5 对象成员的访问方法6 示例参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1071941051 类与对象的定义狗可以表示为一个类。下图中,当具体到某只狗的信息和技能时,可以称之为对象。当有多只狗时,为了便于管理,可以建立表格:将狗的信息抽象出来,定义一个类,如下图:类是对现实生活中一类具有共同特征的事物的抽象,类原创 2020-07-21 10:45:33 · 371 阅读 · 0 评论 -
C++学习笔记(7):字符串类型string
文章目录1 字符串数组操作函数参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1071932921 字符串数组操作函数字符串数组操作函数有很多,如下表所示:# 2 string类型参考资料[1] https://www.imooc.com/learn/381[2] https://www.runoob.com/cplusplus/cpp-strings.html...原创 2020-07-21 10:37:33 · 203 阅读 · 0 评论 -
C++学习笔记(1):命名空间(namespase)
文章目录什么是命名空间?命名空间作用命名空间特点参考资料 注:转载请标明原文出处链接: https://editor.youkuaiyun.com/md/?articleId=107171098什么是命名空间?命名空间作用为了避免变量或函数重命名的问题,在不同的作用域中可以定义相同名字的变量,互不干扰。比如同一栋楼A公司和B公司都有叫小王的员工,如果在楼下直接叫小王,可能会产生误会,直接叫XX公司小王可避免误会。C公司购买A公司和B公司代码,这2家公司相同变量名C公司要怎么使用?代码示例:原创 2020-07-21 07:55:00 · 370 阅读 · 0 评论 -
C++学习笔记(4):sizeof和strlen的区别
文章目录sizeof和strlen的区别参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/107141232sizeof和strlen的区别(1) sizeof操作符的结果类型为size_,它在头文件用typedfe定义为unsigned int类型,计算的是分配空间的实际字节数(包括‘\0’)。strlen结果类型也为size_t,但strlen是计算的空间中字符的个数(不包括‘\0’)。(2) sizeof是原创 2020-07-21 10:20:34 · 229 阅读 · 0 评论 -
C++学习笔记(6):C++内存管理
文章目录1 什么是内存管理?2 内存分配方式2.1 从静态存储区域分配2.2 在栈上创建2.3 在堆上分配3 堆和栈的区别4 内存的申请和释放5 malloc/free与new/delete 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1070096921 什么是内存管理?2 内存分配方式2.1 从静态存储区域分配内存在程序编译的时候就已经分配好了,这块内存在程序的整个运行期间都存在。例如全局变量,stati原创 2020-07-21 10:32:15 · 198 阅读 · 0 评论 -
C++学习笔记(5):C++函数新特性
文章目录1 函数参数默认值2 函数重载3 内联函数4 内容总结参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1070093931 函数参数默认值(1) 有默认值参数值的参数必须在参数表的最右端(2) 函数在声明时可以写参数默认值,但是在定义时最好不要写默认值(3) 无实参则用默认值,有实参时实参覆盖默认值2 函数重载定义:在相同作用域内,用同一函数名定义的多个函数,参数个数或参数类型参数类型不同。原创 2020-07-21 10:23:59 · 190 阅读 · 0 评论 -
C++学习笔记(3):const关键字
文章目录1 const与基本数据类型2 const与指针类型3 const与引用注意事项4 const示例5 const与 #define的比较5.1 区别5.2 const优点参考资料 注:转载请标明原文出处链接: https://lvxiaowen.blog.youkuaiyun.com/article/details/1070085801 const与基本数据类型const用来控制变量是否可以变化。2 const与指针类型const int * p; //指向整形常量的指针,它指向的值不能原创 2020-07-21 09:44:01 · 249 阅读 · 0 评论 -
C++学习笔记(2):引用(reference)
文章目录1 引用是什么?2 引用类型基本数据类型的引用结构体类型引用指针类型的引用3 引用作函数参数4 引用 vs 指针的区别1 引用是什么?生活中很多人既有姓名也有外号,引用的概念类似于人的外号。引用变量是一个别名,即某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。2 引用类型基本数据类型的引用格式:[类型名] &[引用名]=[目标变量名];分别对别名和原名赋值,会相互影响,代码如下:#include <iostream原创 2020-07-21 07:55:45 · 241 阅读 · 0 评论