1-C++基础知识
c++
CoderJourney
努力成为所谓的“后浪”
展开
-
4.C与C++的区别
设计思想上: c语言是面向过程的结构化语言,而c++是面向对象的语言。 语法上: c++具有重载、继承、多态三种特性。 c++相比C,增加了许多类型安全的功能,比如强制类型转换。 c++支持范式编程,比如模板类、函数模板等。 ...原创 2020-10-14 15:53:37 · 167 阅读 · 0 评论 -
深拷贝与浅拷贝
浅拷贝 同一类型对象之间的赋值操作,值得两个对象的成员变量的值相同,两个对象依然是独立的两个对象,称之为浅拷贝。 浅复制仅仅是指向被复制的内存地址,如果原地址中对象被改变了,那么浅复制出来的对象也会相应改变。 深拷贝 在计算机中开辟了一块新的内存地址用于存放复制的对象。 ...原创 2020-10-05 21:30:18 · 111 阅读 · 0 评论 -
3.C++中cast类型转换
C++中四种类型转换是: const_cast static_cast dynamic_cast reinterpret_cast 1.const_cast 用于将const变量转为非const 2.static_cast 用于各种隐式转换,比如非const转const,void * 转指针 static_cast能用于多态向上转换,如果向下转能成功但是不安全,结果未知; 3.dynamic_cast 用于动态类型转换。只能用于含有虚函数的类,用于类层次间的向上和向下转化。只能转指...原创 2020-09-30 10:22:38 · 132 阅读 · 0 评论 -
2.static和const的用法及作用
static 变量中 1.局部变量: 在局部变量之前加上关键字static,局部变量就被定义成为一个局部静态变量。 1)内存中的位置:静态存储区 2)初始化:局部的静态变量只能被初始化一次,且C中不可以用变量对其初始化,而C++可以用变量对其初始化。 3)作用域:作用域仍为局部作用域,当定义它的函数或者语句块结束的时候,作用域随之结束。 注:static修饰的局部变量的存储位置从原来的栈中存放改为静态存储区。 局部静态变量的生命周期:在离开作用域之后,并没有被销毁,而是仍然驻留在...原创 2020-09-29 16:11:15 · 221 阅读 · 0 评论 -
1.C++ 引用&指针
引用&指针 引用语法: int &b a; 引用是已定义变量的别名,不需分配内存空间。 指针是一个实体,需要分配内存空间。 注意事项: 1.引用在定义的时候必须进行初始化。|指针在定义的实时不一定要初始化。 2.引用初始化后不能改变引用。|指针指向的空间可变。 3.有多级指针,但是没有多级引用,只能有一级引用。 4.引用作为参数时,传引用的实质是传地址,传递的是变量的地址; 指针作为参数时,传指针的实质是传值,传递的是指针的地址。 5.sizeof引用得到的是所..原创 2020-09-28 22:20:56 · 490 阅读 · 0 评论