虚幻4C++和日常使用的C++差别很大,里面众多的类型和方法都被虚幻官方给重写了,甚至称之为U++亦不为过,这里记录一些如何用UE4C++来实现引擎里的结构体和枚举的创建。

用结构体来创建角色的各种信息是常见的操作,但这里我想创建一个技能的详细信息,包括技能的消耗,技能的类型,技能的伤害,技能的等级,技能的CD等等

//USTRUCT,可以认为是UE4C++中用结构体的一种前置标识符,和UPROPERTY资产标记类似
USTRUCT(BlueprintType)
struct FGameplayAbilityInfo
{
    GENERATED_BODY()
public:
    //技能冷却
    UPROPERTY(EditAnywhere,BlueprintReadWrite,Category="AbilityInfo")
    float CoolDown;
    //技能消耗
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AbilityInfo")
    float Cost;
    //技能消耗类型
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AbilityInfo")
    ECostType CostType;
    //技能等级
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AbilityInfo")
    int32 abilitylevel;
    //技能类型
    UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "AbilityInfo")
    TSubclassOf<UMyGameplayAbilitynfo>AbilityClass;

//无参构造
    FGameplayAbilityInfo();
    //有参构造
    FGameplayAbilityInfo(float CoolDown,float Cost,ECostType CostType,int32 abilitylevel, TSubclassOf<UMyGameplayAbilitynfo>AbilityClass);
};

关于技能的详细信息在结构体中罗列完成后,要注意,技能消耗类型这里罗列的是一个枚举,因此我们需要再创建一个枚举。

UENUM(BlueprintType)
enum class ECostType :uint8
{
    HP,
    MP,
    Strength

};

枚举里创建了三个消耗类型,HP,MP,和Strength,结构体和枚举都是在头文件中创建即可,记住枚举后的uint8是不可或缺的,这是C++枚举创建的既定流程。

用虚幻4C++使用结构体和枚举相关推荐

  1. 液晶OCM12864,结构体,枚举,指针,规范化和模块化编程

    来自:http://www.eeworld.com.cn/mcu/2011/0804/article_4786.html 1.首先来看看枚举和结构体的使用吧 /******************** ...

  2. C#语言基础——结构体和枚举类型

    结构体和枚举类型 一.结构体(struct) 结构类型是用户自己定义的一种类型,它是由其他类型组合而成的,可包含构造函数.常数.字段.方法.属性.索引器.运算符.事件和嵌套类型的值类型.结构在几个重要 ...

  3. 自定义类型: 结构体,枚举,联合

       1.结构体    个人认为结构体和数组特别相似,只不过结构体和数组的区别在于结构体的成员可以是不同类型,而数组成员类型是相同的.    (1)结构体的声明 struct tag {成员列表//至 ...

  4. 关于结构体,枚举,联合的一些知识

    关于结构体,枚举,联合的一些知识 首先我们来看一下什么是结构体 通俗来说,结构体便是各种类型的集合. 接下来便是各处所代表的含义了 例如,我们现在来描述一个人. 其中name,age,sex,addr ...

  5. c语言函数指针、结构体、枚举实例(详细)解析(快速掌握)

    目录 一.概述 1.1 简介 1.2 简单示例 二.实例操作 2.1 定义一个函数指针 2.2 使用数组将多个函数指针存放 2.3 使用枚举确定数组成员值 2.4 定义一个结构体 三.完整程序讲解 3 ...

  6. 一文道破 结构体,枚举,联合

    自定义类型:结构体,枚举,联合 结构体 结构体类型的声明 1. 结构的基础知识 2.特殊的声明 3.结构体的自引用 4.结构体的定义和初始化 5.结构体内存对齐 6.修改默认对齐数 7.结构体传参 位 ...

  7. C语言自定义类型的介绍(结构体,枚举,联合体,位段)

    ⭐️前面的话⭐️ 大家好!在C语言中,有个叫"自定义类型"玩意,它究竟是什么呢?其实,就是字面意思,可以自己定义的类型就是自定义类型.具体说就是我们熟知的结构体,枚举,位段,联合体 ...

  8. SV学习笔记—结构体及枚举类型及字符串

    目录 1.结构体 1.1 压缩结构体 1.2 非压缩结构体 1.3联合结构体 2.枚举类型 3.字符串 1.结构体 Verilog的最大缺陷之一是没有数据结构,SV中可以使用struct语句创建结构, ...

  9. 结构体,枚举类型与联合体

    目录 ​编辑 一.结构体的基本使用 1.什么是结构体 2.结构体的一般声明 3.结构体的特殊声明 4.结构体的自引用 5.结构体变量的定义和初始化 二.结构体内存对齐 1.内存对齐规则 3.为什么会存 ...

最新文章

  1. matlab中窗函数的使用(二)
  2. 级联下拉框效果,动态加载图片
  3. 关于IDEA 的一些常用设置
  4. Apollo 10 — adminService 全量发布
  5. 2020蓝桥杯省赛---java---B---2(指数计算)
  6. phpcmsV9 邮箱注册:邮箱验证(不改代码、含演示截图) - 配置篇
  7. mysql连接28000错误代码_mysql 在登陆的时候出现error 1045 (28000): 错误解决办法
  8. @RequestParam注解用法
  9. 红外遥控NEC协议总结
  10. 百度网盘上传文件时提示超过4G限制如何解决?
  11. Linux文件帮助_重定向_vi
  12. uva 1589 - Xiangqi(象棋)
  13. 王立柱《C语言程序设计》3.5.3
  14. JIRA部署破解和confluence整合
  15. 虚幻引擎/UE4离线安装
  16. 共享汽车一种新型的交通方式
  17. 物联卡中心:物联卡实名制安不安全?
  18. 内容推荐Mahout
  19. 通过雪花(snowflake)算法用Python实现一个简单的发号器
  20. Titanic:数据挖掘入门的第一步

热门文章

  1. 智能证件照怎么ps?自己就能在家制作
  2. JavaMail发送邮件到qq邮箱的过程中遇到的问题及解决办法
  3. EtherCAT从站代码配置
  4. 用c语言400行代码小游戏,程序员400行代码制作翻牌游戏解决无聊时间
  5. 简历撰写技巧总结(校招生)
  6. 寄存器的“地址”概念
  7. 解决不能打开网站但能ping通
  8. Thymeleaf-如何获取model中的值
  9. java 流量单位转换_将内容转换为持续流量的五种最佳方法
  10. JTAG 学习 -SVF格式