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

UFUNCTION C++ 的再次理解

一.UFUNCTION 格式

和属性也比较像,两部分 函数说明符,和元数据说明符

UFUNCTION不仅能 控制对蓝图公开,还能与 绑定委托,用户输入,网络回调功能相关联,而且还能创建自己控制带命令

二.函数说明符控制 ,函数在引擎和编辑器各个反面的UPERPERTY属性说明符类似,属性控制的时变量。

BlueprintPure |

此函数不对拥有它的对象产生任何影响,可在蓝图或关卡蓝图图表中执行。早默认情况下,带有 const 标记的函数将作为纯函数公开。要将常量函数变成非纯函数,你可以做以下声明:BlueprintPure=false

1.纯函数没用引脚。const 就表示不改变里面的变量

	UFUNCTION(BlueprintPure)float  BlueprintPureFunction();UFUNCTION(BlueprintCallable)float BlueprintCallableFunction();UFUNCTION(BlueprintCallable)int32 BlueprintCallableConstFunction() const;UFUNCTION(BlueprintPure = fasle)int32 BlueprintPureFalseFunction() const;

在UE 的 C++ 中, const 关键字用于修饰函数,表示该函数不会改变其作用域内的变量值。 添加 const 后有以下几个意义: 常量函数:当你声明一个函数为 const,则表明它不会修改任何外部对象的状态,这对于安全性和提高代码效率很有帮助,因为编译器可以对这类函数进行优化

2.纯函数没有引脚,输出引脚连两次的话,哪怕是打印函数,可能会执行两次逻辑。

3.BlueprintImplementableEvent 

BlueprintImplementableEvent | 此函数可在蓝图或关卡蓝图图表中实现。

感觉官方不够准却,记住一定不要再 .cpp里写定义。它一定要在蓝图里才能定义,头文件声明一下就行了。

4.BlueprintNativeEvent 

| 此函数旨在被蓝图覆盖掉,但是也具有默认原生实现。用于声明名称与主函数相同的附加函数,但是末尾添加了_Implementation,是写入代码的位置。如果未找到任何蓝图覆盖,该自动生成的代码将调用 _Implementation 方法。

这里官方还比较明确了,蓝图覆盖不了,再用.cpp里的原生的。

5.BlueprintAuthorityOnly | 如果在具有网络权限的机器上运行(服务器、专用服务器或单人游戏),此函数将仅从蓝图代码执行。

只在服务器上进行伤害,本地不会。

http://www.xdnf.cn/news/19675.html

相关文章:

  • 产品月报|睿本云8月产品功能迭代
  • AWS:AssumeRole背后真正的安全哲学,不仅是迂回
  • 综合实验:DHCP、VLAN、NAT、BDF、策略路由等
  • K8S 知识框架和命令操作
  • Linux按键输入实验
  • MongoDB 内存管理:WiredTiger 引擎原理与配置优化
  • 实战练习:通过HTTP请求节点的POST方法用API创建智能体 JSON序列化节点
  • Java学习笔记-反射(二)
  • 使用ansible的playbook完成以下操作
  • Centos安装unoconv文档转换工具并在PHP中使用phpword替换word模板中的变量后,使用unoconv将word转换成pdf
  • 高效浏览器标签页管理:Chrome扩展开发完全指南
  • 三、数据结构
  • 【vue eslint】报错:VSCode自动保存格式化与ESLint规则冲突
  • Linux 正则表达式与grep命令
  • 【Excel】将一个单元格内​​的多行文本,​​拆分成多个单元格,每个单元格一行​​
  • ApiFox的使用
  • AP生物课程:全面解析与优质培训机构推荐
  • 力扣每日一刷Day 19
  • 复杂计算任务的智能轮询优化实战
  • Agentless:革命性的无代理软件工程方案
  • 本地没有公网ip?用cloudflare部署内网穿透服务器,随时随地用自定义域名访问自己应用端口资源
  • 文件上传漏洞基础及挖掘流程
  • Python 爬虫实战:爬取 B 站视频的完整教程
  • TFS-2010《Fuzzy PCA-Guided Robust k-Means Clustering》
  • 控制系统仿真之PID校正-利用PID控制器、PID调节器实现(九)
  • 别再说AppInventor2只能开发安卓了!苹果iOS现已支持!
  • Linux内核内存管理系列博客教程学习规划
  • Java内功修炼(3)——并发的四重境界:单例之固、生产消费之衡、定时之准、池化之效
  • 红楼梦 AI HTML 分析 - 好了歌
  • vue动态(自适应定位)表格