摘要:
友元语法 friend关键字只出现在声明处 其他类、类成员函数、全局函数都可声明为友元 友元函数不是类的成员,不带this指针 友元函数可访问对象任意成员属性,包括私有属性 友元类 friend class 类名 友元类 是单向,不可传递的 #define _CRT_SECURE_NO_WARNIN
阅读全文
posted @ 2021-08-21 22:45
BZ易风
阅读(227)
推荐(0)
编辑
摘要:
全局函数做友元函数 全局函数写到类中做声明 并且使用友元函数关键字friend 实现 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> using namespace std; class House { fr
阅读全文
posted @ 2021-08-21 22:37
BZ易风
阅读(71)
推荐(0)
编辑
摘要:
需要修改常函数里的数值,需要加上mutable关键字 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class Person { public: Person() { //构造中修改属性 //this
阅读全文
posted @ 2021-08-21 22:08
BZ易风
阅读(40)
推荐(0)
编辑
摘要:
常函数 void func() const {} 常函数 修饰是this指针 const Type * const this, 不能修改this指针指向的值 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std
阅读全文
posted @ 2021-08-21 22:04
BZ易风
阅读(111)
推荐(0)
编辑
摘要:
如果成员函数没有用到this,那么空指针可以直接访问 如果成员函数用的this指针,就要注意,可以加if判断,如果this为NULL就return, 否则直接报错 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace
阅读全文
posted @ 2021-08-21 17:38
BZ易风
阅读(70)
推荐(0)
编辑
摘要:
this指针的使用 指针永远指向当前对象 解决命名冲突 *this 指向对象本体 非静态的成员函数才有this指针 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class Person { publ
阅读全文
posted @ 2021-08-21 17:08
BZ易风
阅读(58)
推荐(0)
编辑
摘要:
链接:https://www.jianshu.com/p/d994731f658d #pragma pack() 1.#pragma简述: 在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一
阅读全文
posted @ 2021-08-20 17:54
BZ易风
阅读(70)
推荐(0)
编辑
摘要:
成员变量和函数的存储 c++实现了“封装”,那么数据(成员属性)和操作(成员函数)是什么样的呢? “数据”和“处理数据的操作(函数)”是分开存储的。 c++中的非静态数据成员直接内含在类对象中,就像c struct一样。 成员函数(member function)虽然内含在class声明之内,却不出
阅读全文
posted @ 2021-08-20 17:41
BZ易风
阅读(39)
推荐(0)
编辑
摘要:
单例实现 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class Singleton { public: static Singleton* Instance() //只提供一个公有化的指针返回 {
阅读全文
posted @ 2021-08-20 17:13
BZ易风
阅读(24)
推荐(0)
编辑
摘要:
静态成员变量 在类定义中,它的成员(包括成员变量和成员函数),这些成员可以用关键字static声明为静态的,称为静态成员。 不管这个类创建了多少个对象,静态成员只有一个拷贝,这个拷贝被所有属于这个类的对象共享。 在一个类中,若将一个成员变量声明为static,这种成员称为静态成员变量。与一般的数据成
阅读全文
posted @ 2021-08-20 16:18
BZ易风
阅读(751)
推荐(0)
编辑
摘要:
对象创建 当创建一个c++对象时会发生两件事: 为对象分配内存 调用构造函数来初始化那块内存 第一步我们能保证实现,需要我们确保第二步一定能发生。c++强迫我们这么做是因为使用未初始化的对象是程序出错的一个重要原因 动态分配内存方法 为了在运行时动态分配内存,c在他的标准库中提供了一些函数,mall
阅读全文
posted @ 2021-08-20 14:48
BZ易风
阅读(200)
推荐(0)
编辑
摘要:
explicit 防止隐式类型转换
阅读全文
posted @ 2021-08-20 14:39
BZ易风
阅读(38)
推荐(0)
编辑
摘要:
1.类的类成员的类中要有默认构造参数 2.构造顺序 当类对象作为类的成员时,构造顺序是先依次构造类成员的构造,然后再构造自己 3.析构顺序 析构与构造相反,先析构自己,再以相反顺序依次析构成员 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #
阅读全文
posted @ 2021-08-20 14:19
BZ易风
阅读(97)
推荐(0)
编辑
摘要:
利用初始化列表来初始化数据 构造函数后面 + : 属性1(参数1), 属性2(参数2),…… class Test { public: /* Test(int a, int b, int c) { m_A = a; m_B = b; m_C = c; }*/ Test(int a, int b, i
阅读全文
posted @ 2021-08-20 13:46
BZ易风
阅读(101)
推荐(0)
编辑
摘要:
浅拷贝 同一类型的对象之间可以赋值,使得两个对象的成员变量的值相同,两个对象仍然是独立的两个对象,这种情况被称为浅拷贝. 一般情况下,浅拷贝没有任何副作用,但是当类中有指针,并且指针指向动态分配的内存空间,析构函数做了动态内存释放的处理,会导致内存问题。 浅拷贝引发的问题 深拷贝 当类中有指针,并且
阅读全文
posted @ 2021-08-20 11:01
BZ易风
阅读(42)
推荐(0)
编辑
摘要:
系统默认给一个类提供3个函数 默认构造、拷贝构造、析构函数 1.当我们有了有参构造函数,那么系统就不会再提供默认构造函数了 没有有参构造函数时: 2.但是 系统还会提供默认拷贝构造函数,即使没有定义拷贝构造,也可以直接调用,进行简单的值拷贝 3.当我们提供了拷贝构造,那么系统就不会提供其它构造了,如
阅读全文
posted @ 2021-08-20 10:44
BZ易风
阅读(99)
推荐(0)
编辑
摘要:
debug和release调试结果不同是因为release下会将代码再次优化 void test02() { Person p; p.age = 10; doWork(p); } Person doWork2() { Person p1; return p1; //复制一个新的数据返回 } void
阅读全文
posted @ 2021-08-20 10:25
BZ易风
阅读(92)
推荐(0)
编辑
摘要:
class Person { Person() //构造 { } //可以重载和有参 ~Person() //析构 { } } 构造函数 与类名相同,不用写void 分类 参数分类:无参构造函数 有参构造函数 类型分类:普通构造函数 拷贝构造函数 #include <iostream> using
阅读全文
posted @ 2021-08-19 17:25
BZ易风
阅读(48)
推荐(0)
编辑
摘要:
#include <iostream> using namespace std; class Cube { public: void SetL(int l) { m_L = l; } int GetL() const //只有用const修饰的方法,compareCube才能用const做形参 {
阅读全文
posted @ 2021-08-19 16:30
BZ易风
阅读(36)
推荐(0)
编辑
摘要:
class 成员默认权限是private struct 成员默认权限是public
阅读全文
posted @ 2021-08-19 15:35
BZ易风
阅读(38)
推荐(0)
编辑
摘要:
C语言封装 属性和行为分开处理了,类型检测不够 typedef struct _Person{ char name[64]; int age; }Person; typedef struct _Aninal{ char name[64]; int age; int type; //动物种类 }Ain
阅读全文
posted @ 2021-08-19 15:01
BZ易风
阅读(26)
推荐(0)
编辑
摘要:
编辑器为了实现重载函数,用不同类型来修饰不同的函数名,比如 void func(); 编辑器会修饰成_func 碰到void func(int x),编辑器会修饰成_func_int 碰到void func(int x , char c),可能就会修饰成_func_int_char
阅读全文
posted @ 2021-08-19 11:23
BZ易风
阅读(53)
推荐(0)
编辑
摘要:
激活软件激活以后还是不能打开, 删除Program Files\Unity\Editor\Editor\Data\Resources\Licensing目录
阅读全文
posted @ 2021-08-18 15:39
BZ易风
阅读(898)
推荐(0)
编辑
摘要:
原文引自:https://blog.csdn.net/weixin_30535913/article/details/96012323 LuaStack.lua local stack = {} stack.__index = stack function stack:new() local tem
阅读全文
posted @ 2021-08-17 10:17
BZ易风
阅读(97)
推荐(0)
编辑
摘要:
1.相同的作用域 2.有默认参数时,要注意避免二义性问题 void func(int a, int b = 20) { } void func(int a ) { } void test() { func(20); //error 不知道调用哪个 }
阅读全文
posted @ 2021-08-13 12:29
BZ易风
阅读(35)
推荐(0)
编辑
摘要:
原文链接:https://blog.csdn.net/qq_35373690/article/details/86901002 物体本身大小 LeanTween.scale(Cube, new Vector3(0, 0, 0), 0.5f); //3个参数1.变换的物体,2变化的大小,3.时间 //
阅读全文
posted @ 2021-08-12 15:09
BZ易风
阅读(1023)
推荐(0)
编辑
摘要:
函数占位参数 占位参数只有参数类型声明,⽽而没有参数名声明 一般情况下,在函数体内部⽆无法使⽤用占位参数, 只有重载的时候才有用 占位参数可以有默认值 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; /
阅读全文
posted @ 2021-08-11 12:44
BZ易风
阅读(177)
推荐(0)
编辑
摘要:
原文链接:https://blog.csdn.net/ChinarCSDN/article/details/80878900 查询所有失活的子孙物体 using UnityEngine; /// <summary> /// 查找物体 /// </summary> public class China
阅读全文
posted @ 2021-08-11 10:33
BZ易风
阅读(49)
推荐(0)
编辑
摘要:
早期作用是用来代替宏 宏函数的缺陷 #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; //缺陷1:没有类型 //#define MyAdd(x,y) x+y //解决方法:加括号 #define MyAd
阅读全文
posted @ 2021-08-10 12:41
BZ易风
阅读(60)
推荐(0)
编辑
摘要:
原文地址:https://blog.csdn.net/u013412497/article/details/24495271 在学习c语言的过程中,可能我们很少见到int int *const p,const int *p和int const *p,但当我们在学习c++的过程中,就会遇到这些模糊不清
阅读全文
posted @ 2021-08-08 12:24
BZ易风
阅读(223)
推荐(0)
编辑
摘要:
引用 变量名 变量名实质上是一段连续存储空间的别名,是一个标号(门牌号) 通过变量来申请并命名内存空间. 通过变量的名字可以使用存储空间. 引用的概念 变量名,本身是一段内存的引用,即别名(alias). 引用可以看作一个已定义变量的别名。 引用的语法:Type&
阅读全文
posted @ 2021-08-03 23:03
BZ易风
阅读(36)
推荐(0)
编辑
摘要:
命名空间 实用性增强 C语⾔言中的变量都必须在作⽤用域开始的位置定义!! C++中更强调语⾔言的“实⽤用性”,所有的变量都可以在需要使⽤用时再定义。 using namespace std; int main(void) { int i = 0; cout << "i = " << i << end
阅读全文
posted @ 2021-08-01 21:58
BZ易风
阅读(69)
推荐(0)
编辑
摘要:
C/C++对于定义的没赋值的变量开辟的空间在BSS段,BSS段的数据全部为0 赋值的变量的数据被定义在data的数据段内
阅读全文
posted @ 2021-08-01 21:50
BZ易风
阅读(86)
推荐(0)
编辑
摘要:
#define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; namespace LOL { int swkId = 1; } void test01() { int swkId = 2; using LOL::sw
阅读全文
posted @ 2021-08-01 12:21
BZ易风
阅读(284)
推荐(0)
编辑
摘要:
::作用域运算符 ::双冒号为全局运算符 #include <iostream> using namespace std; int atk = 200; void Test() { int atk = 100; cout << "Test内部:" << atk << endl; cout << "T
阅读全文
posted @ 2021-08-01 11:50
BZ易风
阅读(33)
推荐(0)
编辑
posted @ 2021-08-01 11:28
BZ易风
阅读(26)
推荐(0)
编辑
摘要:
原文引自:https://blog.csdn.net/sisixiaocainiao/article/details/104238085 C语言版点击工具->代码片段管理器 语言选择Visual C++ ->以class为模板-> 复制位置路径 进入文件资源管理器,将class文件复制到本路径下。
阅读全文
posted @ 2021-08-01 11:14
BZ易风
阅读(544)
推荐(0)
编辑
摘要:
原文:https://www.runoob.com/cplusplus/cpp-operators.html 先算右一后左一,① 乘除加减移位比。② 与异或或位逻辑,③ 三目赋值逗号稀。④ ①先算右面的一元运算符,后算左面的。 ②乘除代表*/%,加减就是+和-,移位就是<<和>>,比就是比较运算符,
阅读全文
posted @ 2021-07-24 15:48
BZ易风
阅读(353)
推荐(0)
编辑
摘要:
原文引自:https://www.runoob.com/cplusplus/cpp-operators.html 在特殊情况下,可以用位运算符 & 来取代 %,从而提高程序运行效率。 这种特殊情况就是取得模是 2 的 n 次幂,如:2、4、8、16...等。 %8 和 &7 是等价的。 事实上无论把
阅读全文
posted @ 2021-07-24 15:44
BZ易风
阅读(602)
推荐(0)
编辑
摘要:
1. 下载 https://visualstudio.microsoft.com/zh-hans/downloads/ 下载引导程序 2、把启动包放到指定目录,如:E:\vs 命令格式: <vs引导程序exe> --layout <离线安装包下载的路径> --add <功能模块> --lang <语
阅读全文
posted @ 2021-07-14 18:03
BZ易风
阅读(599)
推荐(0)
编辑