zoukankan      html  css  js  c++  java
  • 实例甜点 Unreal Engine 4迷你教程(5)之函数中的静态变量

    本小节的教程无前置教程,可直接学习,篇幅很短。

    本教程浓缩起来就是一句话:函数中的静态变量在调试过程中保留值。所以需要谨慎对待。

    什么意思?请先不要一步一步对着做,而整体地看一遍下面的过程:

    第一步:创建一个空工程(C++ Basic Code),名为LearnArray

    第二步:创建两个Actor类分别称为:MyActorsand

     

    第三步:在MyActor中有tick函数如下:

    ▼代码开始
    
    // Called every frame
    void AMyActor::Tick(float DeltaTime)
    {
        Super::Tick(DeltaTime);
        static int32 Timer = 0;//【请注意这里声明了函数级别的静态变量】
        if (Timer++ == 20)
        {
            UE_LOG(LogTemp, Warning, TEXT("%s"), *FString("[log by wenjie] Time==20"));
    /*【这一段注掉的代码请无视】
            for (auto i : arr)
            {
                arr.Remove(i);
                UE_LOG(LogTemp, Warning, TEXT("%s"), *FString("[log by wenjie] removed one instance"));
            }*/
    
        }
        UE_LOG(LogTemp, Warning, TEXT("%s %d"), *FString("[log by wenjie] "), Timer);//【请注意这里有打印】
    }
    
    ▲代码结束

    第四步:执行之后观察打印:

    第一遍打印到413,第二遍运行时,将会从414开始打印!

    总结:函数中的静态变量在调试过程(PIE)中依然保留值!

    —— 小江村儿的文杰 zouwj5@qq.com 20178721:39:09

  • 相关阅读:
    PHP文件上传代码和逻辑详解
    了解thinkphp(二)
    了解ThinkPHP(一)
    php关于static关键字
    php关于return的关键字
    会话控制
    PDO数据库
    PHP包含文件函数include、include_once、require、require_once区别总结
    jQuery事件
    一、MVC模式学习概述
  • 原文地址:https://www.cnblogs.com/JackSamuel/p/7304973.html
Copyright © 2011-2022 走看看