当前位置: 首页 > news >正文

如何分析网站设计吉首做网站

如何分析网站设计,吉首做网站,找网红推广一般怎么合作,精仿小米社区wordpress模板一.UObject的创建 UObject 不支持构造参数。 所有的C UObject都会在引擎启动的时候初始化,然后引擎会调用其默认构造器。如果没有默认的构造器,那么 UObject 将不会编译。 有修改父类参数的需求,就使用指定带参构造 // Sets default value…

一.UObject的创建

UObject 不支持构造参数。

所有的C++ UObject都会在引擎启动的时候初始化,然后引擎会调用其默认构造器。如果没有默认的构造器,那么 UObject 将不会编译。

有修改父类参数的需求,就使用指定带参构造

	// Sets default values for this actor's propertiesAMyActor();// AMyActor(const FObjectInitializer& ObjectInitializer);

创建

1. NewObject<T>();

虚幻会管理,它重载了new 和 delete。

	myObject =  NewObject<UBaseObject>();

2.     CreateDefaultSubobject<T>();

RootComponent = CreateDefaultSubobject<USceneComponent>("Root");

只是上一个更通用,下面这个在构造函数里才使用,来创建和管理组件。

二.测试垃圾回收

在你Actor的头文件的中,声明一个UObject·。

UCLASS()
class MYPROJECT_API UBaseObject :public UObject
{GENERATED_BODY()
public:UBaseObject();UBaseObject(const FObjectInitializer& ObjectInitializer);virtual ~UBaseObject();int32 Health = 666;
};

并在Actor里声明它。

public:	// Called every framevirtual void Tick(float DeltaTime) override;UFUNCTION(BlueprintCallable)void InitBaseObject();UFUNCTION(BlueprintCallable)int32 GetBaseObjectHealth();//为了避免对象被回收//UPROPERTY()  //有对象引用了,就不会被回收UBaseObject* myObject = nullptr;
};

CPP里实现

void AMyActor::InitBaseObject()
{myObject =  NewObject<UBaseObject>();myObject->AddToRoot();
}int32 AMyActor::GetBaseObjectHealth()
{if (myObject){return myObject->Health;}return -1;
}UBaseObject::UBaseObject()
{UE_LOG(LogTemp, Warning, TEXT("初始化了"));}UBaseObject::UBaseObject(const FObjectInitializer& ObjectInitializer)
{UE_LOG(LogTemp, Warning, TEXT("初始化了2"));
}UBaseObject::~UBaseObject()
{UE_LOG(LogTemp, Warning, TEXT("垃圾回收"));
}

测试

一旦按下3,垃圾回收。自己的UObject就会被回收掉。

解决方案,加上UPOPERTY,让它被对象引用。

	//为了避免对象被回收UPROPERTY()  //有对象引用了,就不会被回收UBaseObject* myObject = nullptr;

AddtoRoot,强制不被回收。和允许回收。少用这个方法。

void AMyActor::InitBaseObject()
{myObject =  NewObject<UBaseObject>();myObject->AddToRoot();
}

注:标记UPROPERTY 会自动加入root set 阻止垃圾回收

一个Up标记object类指针变量,当指向null时,object会进行析构,自动进行垃圾回收

一个非标记的object类变量,当未添加AddToRoot时,会被下一次垃圾回收,留下野指针。

你通常需要保持对希望保持活跃的任何Object的`UPROPERTY`引用,或者将指向它的指针存储在`TArray`或其他引擎容器类中。

http://www.yayakq.cn/news/485474/

相关文章:

  • 宿州官方网站建设网站a记录的是做cname
  • 域名关联网站网站建设 合同
  • 专做宠物的网站wordpress分享和点赞
  • 做数据结构基础的网站中国知名会展企业
  • 长沙创意网站建设双流区规划建设局网站
  • 微信网站方案北京丰台网站建设公司
  • 网络建站公司如何做市场旅游网站组织结构图怎么做
  • 山西网站建设公司哪家好wordpress加载中
  • 医疗公司网站建设项目背景php 网站开发 视频
  • 织梦网站统计代码网站设计培训学院
  • 建设学校网站的意义低价备案域名
  • 百度网站搜索排名杭州建筑市场信用网
  • 做网站合同封面网站集群建设相关的招标
  • 网页制作代码大全百度关键词优化有效果吗
  • opencart网站建设婚礼做的好的婚庆公司网站
  • html中文网站作业五八同城找工作
  • 国外网站 dns免费免费建网站
  • 平台网站很难做北京做建筑信息的网站
  • 成都门户网站有哪些淘宝代运营去哪里找
  • 网站模板尺寸wordpress 皇冠主题
  • 绍兴做网站比较专业的公司电子商务系统的开发方式
  • 温州做网站哪家比较好青岛好的网站制作推广
  • 请问如何做网站英文网站外链查询
  • 厦门市规划建设局网站简单易做的的网站
  • 广告网站怎么建设课程网站建设的财务分析
  • gta5线下买房网站建设中国网站排名100
  • 后台控制网站关键词设置的详细代码wordpress怎么重置密码
  • 赣icp上饶网站建设做网站后台主要负责什么
  • 阿里云建站和华为云建站哪个好做百度移动端网站优化
  • 如何做网站主页wordpress和公众号对接