自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 收藏
  • 关注

原创 虚幻函数

在TriggerVolume中有函数IsOverLappingActor()GetOwner()获取当前对象(要加头文件#include “GameFramework/Actor.h”)GetWorld()获取world当中的东西(再衍生要加头文件#include “Engine/World.h”)GetFirstPlayerController()获取当前玩家控制(在GetWorld()里面)GetPawn()获取当前人物(在GetFirstPlayerController()里面)IsOver

2020-08-29 19:24:01 480 1

原创 虚幻宏

BlueprintReadWrite可在蓝图系统中读和写(用在变量上)BlueprintCallable可在蓝图 系统中被调用(用在函数上)BlueprintReadOnly只能在蓝图中被读BlueprintWriteOnly只能在蓝图中被改写Category=""将定义的东西放在“”中的分类下UE_LOG(LogTemp,Log,TEXT(“Hello World!”));在虚幻的报错日志中报错(有两个逗号,两逗号中间的是报错等级log显示白字warning显示橙字error显示红字,右逗号右边

2020-08-25 17:43:41 258

原创 函数指针做函数参数的思想构析

#include #include <string.h>#include <stdlib.h>using namespace std;int add(int a, int b)//子任务的实现者{printf(“func add() do…”);return a + b;}int add2(int a, int b)//子任务的实现者{printf(“func add2() do…”);return a + b;}int add3(int a, int b

2020-08-11 02:28:13 114

原创 函数指针语法梳理

#include #include <string.h>#include <stdlib.h>using namespace std;//函数指针语法梳理//1、如何定义一个函数类型//2、如何定义一个函数指针类型//3、如何定义一个函数指针(指向一个函数的入口地址)int add(int a, int b){printf(“func add…\n”);return a + b;}void main(){add(1, 2);//直接调用//函数名就是函数

2020-08-11 01:22:27 168

原创 数组指针语法梳理

#include #include <string.h>#include <stdlib.h>using namespace std;//数组类型基本语法知识梳理void main(){int a[10];//a代表的是数组首元素的地址,&a代表的是整个数组的地址 a+1步长是4 &a+1步长是40//定义一个数组类型typedef int(MyArray)[10];MyArray testarray;testarray[0] = 10

2020-08-11 00:41:36 260

原创 二维指针作参数的函数

2020-07-30 20:30:18 512

原创 指向多维数组的指针

2020-07-30 20:22:08 121

原创 指针数组以及多级指针

2020-07-30 20:20:21 90

原创 ue4在c++代码中设置参数的最大最小值

2020-07-29 19:59:30 515

原创 面向抽象类编程案例——计算程序员工资

#include using namespace std;class programmer{public:virtual void getSal() = 0;};class junior_programmer :public programmer{public:junior_programmer(char* name, char* job, int sal){this->name = name;this->job = job;this->sal = sal;}

2020-07-14 22:47:05 400

原创 抽象类在多继承中的应用

抽象类在多继承中的应用的案例:#include using namespace std;class interface1{public:virtual int add(int a, int b)=0;virtual void print() = 0;};class interface2{public:virtual int mcl(int a, int b) = 0;virtual void print() = 0;};class Parent{public:int g.

2020-07-14 20:47:39 263

原创 纯虚函数

纯虚函数做接口的案例:#include using namespace std;class Area{public:virtual void calculate() = 0;};class Circle:public Area{public:Circle(int a, int b){this->a = a;this->b = b;}virtual void calculate(){cout << “圆的面积是” << 3.14 * a .

2020-07-14 19:41:00 545

原创 父类指针和子类指针的步长

结论:多态是用父类指针指向子类对象 和 父类指针++ 是两个不同的概念案例:#include using namespace std;class Parent{public:Parent(int a=0){this->a = a;}virtual void print(){cout << “这是父类” << endl;}private:int a;};class Child:public Parent{public:Child(in

2020-07-14 17:37:32 129

原创 面试题:谈谈对多态的理解

2020-07-13 13:07:23 568

原创 子类的vptr指针是分步初始化的

2020-07-13 04:54:11 117

原创 多态的实现原理

2020-07-13 04:34:01 132

原创 重载、重写、重定义、名称覆盖

1、子类和父类中的函数名相同,函数参数相同,没有virtual关键字,重定义2、子类和父类中的函数名相同,函数参数相同,有virtual关键字, 重写3、子类和父类中的函数名相同,函数参数不同,名称覆盖,不会发生重载4、在同一个作用域内,函数名相同,函数参数不同(返回值类型不影响),称为重载...

2020-07-12 18:29:00 109

原创 虚析构函数

目的:通过基类对象的指针,来调用所有派生类的析构函数实现方法:在基类析构函数前加上virtual

2020-07-12 16:56:01 160

原创 多态成立的三个条件

2020-07-11 20:30:16 337

原创 ue4前缀

2020-07-11 18:10:54 247

原创 彻底删除ue4中c++类文件的方法

第一步:找到自己的工程,打开source文件夹打开名字为工程名的文件夹(这里是ttt)选中并删除想要删除的c++类(这里是MyObject.h和MyObject.cpp)第二部:回到最初的工程文件夹,将Binaries文件夹整个删除第三步:右键.uproject文件,点击Generate Visual Studio project files等待片刻后,右键.uproject文件,点击open选择是最后,可喜可贺,删除完成了!!!...

2020-07-11 17:37:04 2186

原创 反射与回收系统

注意:所有的include应该写在#inlcude “MyActor.generated.h”之前

2020-07-11 17:09:30 93

原创 二义性和虚继承

如果一个派生类从多个基类派生,而这些基类又有一个共同的基类,则在对该基类中声明的名字进行访问时,可能产生二义性(这就是虚继承virtual的唯一应用场景)#include using namespace std;class A{public:int a;void print(){cout << “a:” << a << endl;}};class B1:virtual public A{};class B2:virtual public A

2020-07-08 16:22:00 132

原创 c++多继承语法

2020-07-08 15:44:37 94

原创 c++继承的static关键字

1、拥有static关键字的变量遵守派生类的访问控制规则2、父类中的static修饰的成员变量,在子类继承之前必须进行初始化,否则子类继承会报错;#includeusing namespace std;class A{public:A(){cout<<“A的构造函数”<<endl;}public:static int a;int b;public:void get(){cout<<"A的b: "<<b<<endl;

2020-07-08 14:52:15 246

原创 继承中的同名成员变量和同名成员函数

一句话:派生类的同名成员屏蔽基类同名成员,转而调用自身成员。 若想调用基类同名成员,需要加上域操作符(::) 举例:class Parent { public: int a; void printP() { cout<<"a"<<a<<endl; } }; class Child:public Parent { public: int a;

2020-07-07 18:50:22 634

原创 继承中的构造与析构

结论:先调用父类构造函数,再调用组合对象的构造函数,在调用子类构造函数。析构顺序和构造相反。

2020-07-07 17:49:23 1022

原创 类型兼容性原则

2020-07-07 15:08:11 311

原创 c++继承:判断一句话是否能被访问

三看原则:1、看调用语句(这句话写在子类的内部还是外部)2、看子类如何从父类继承(public、private、protected)3、看父类中的访问级别(public、private、protected)注意:父类中的私有对象(private),无论以何种方法(public、private、protected)被子类继承,子类都不可调用...

2020-07-07 13:44:10 65

原创 c++继承的语法与重要说明

语法:class 派生类名:继承方式 基类名   {    成员声明;   }说明:1、子类拥有父类的所有成员变量和成员函数(除了构造和析构函数)2、子类就是一种特殊的父类3、子类对象可以当作父类对象使用4、子类可以拥有父类没有的方法和属性...

2020-07-06 21:31:29 122

原创 将类中的private变量露出来

变成public的函数即可例:class A//定义一个类{private:int b;public:int m_b(){return b;}}//调用void main(){int c=A.m_b();//想要实现c=b}

2020-07-04 09:46:40 157

原创 重载等号操作符

结论:先释放旧的内存,在返回一个引用Name &operator=(Name &obj1){//先释放旧的内存if(m_p!=NULL){delete []m_p;m_len=0;}//根据obj1分配内存大小this.m_len=obj1.m_len;this.m_p=new char[m_len+1];//把obj1赋值strcpy(m_p,obj1.m_p);return *this;}...

2020-07-02 04:50:07 144

原创 友元函数实现左移右移操作符重载

注意:输入输出操作符的重载只能依靠友元函数(而不能用成员函数)ostream& operate<<(ostream &out,Complex &c1)//函数返回值当左值需要返回一个引用 {out<<“12345,生活真是苦”<<endl;return out;}...

2020-07-01 10:43:36 133

原创 全局函数和成员函数完成一元操作符重载

一、全局函数重载++(前置)Complex & operator++(Complex &c1){c1.a++;//由于用到了类中的私有成员,该函数需要成为类的友元函数c1.b++;return c1;}二、成员函数重载++(前置)Complex & operator++(){this->a++;this->b++;return *this;}三、全局函数重载++(后置)Complex operator++(Complex &c1,in

2020-07-01 09:50:16 173

原创 c++运算符重载

一、设计原因:让自定义数据类型有机会进行运算符操作二、本质:运算符重载的本质是函数调用三、重载方法:例1、通过全局函数方法完成+操作符重载Complex operator+(Complex &c1,Complex &c2)//函数声明{…}int main()//函数调用分析{Complex c1(1,2),c2(3,4);Complex c3=c1+c2;//相当于调用函数Complex c3=operator(c1,c2);}例2、通过类成员函数方法完成-操

2020-07-01 02:45:33 123

原创 ue4可导入文件类型

2020-06-30 22:20:30 3678

原创 友元类

2020-06-30 22:11:33 85

原创 友元函数

一般来说,类的私有成员(private)不能在类外被调用。但可以通过使用友元函数破坏这个规则。格式:class A{public:friend void FriendFun(A* pa,int b);//说明语句位置与访问描述无关 (可 以在private或public下,都一样)private:int a;} //调用 void FriendFun(A* pa,int b) { pa->a=b;//若不是友元函数,则此行程序会报错 }...

2020-06-30 21:02:02 551

原创 函数返回引用

函数返回引用(返回一个引用相当于返回自身)Test &a(…){…return *this;//*操作让this指针回到元素状态}

2020-06-29 01:43:56 127

原创 全局函数和成员函数之间的转化

1、把全局函数转化成成员函数,通过this指针隐藏左操作数如:全局函数Test Add(Test &t1,Test &t2)它的成员函数形式Test Add(Test &t2)成员函数的应用Test K=t1.Add(t2)2、把成员函数转化为全局函数,多了一个参数如:成员函数void PrintAB(){cout<<this.a<<endl;}它的全局函数形式void PrintAB(Test *pthis){cout<a<

2020-06-29 01:37:05 223

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除