zoukankan      html  css  js  c++  java
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:16.DefaultProperties

    当在游戏中创建一个对象时,它的属性会初始化为“默认”值。这些值是由创立用于创建该对象的类的游戏程序员设置的。在很多编程语言中,当创建对象时会调用一个特殊的函数(即构造器)来初始化变量。UnrealScript中没有和这个概念相同的确切等价物。相反,UnrealScript使用一个段称为 defaultproperties 的特殊代码块来为属于该类的所有实例变量设置值,当创建该类的实例时将会使用该默认属性代码块进行初始化。这个代码块总是位于脚本的尾部,所有函数及状态声明的后面,尽管它是UnrealScript的一部分,但是这段代码不是标准的UnrealScript代码,并且遵循着略微不同的规则

    正如前面所提到的, defaultproperties 块的规则和标准的UnrealScript语法略有不同。总的不同之处有:
    · 在defaultproperties语句块中不允许存在语句,动态数组操作除外。这意味着您不能执行计算、调用函数等。 defaultproperties 仅用于分配特定的值给实例变量。
    · 分号可以放在每行的末尾,但不是必须的。
    · 避免出现空格 (比如在变量名、赋值运算符、及值之间)。
    · defaultproperties(默认属性) 代码块的花括号应该另起一行。
    除了上面列出的基本的不同之处外,某些类型的赋值语法也和UnrealScript中的标准赋值语法不同。

    几行语句大概解释默认属性
    class MyUSGame extends actor
    placeable;

    var string s;
    var int i;
    var float f;
    var int ar[3];

    function PostBeginPlay()
    {
    //ar[3]=3; 
    `log("s:"@s);
    `log("++i:"@++i);
    `log("f:"@f);
    `log("ar:"@ar[2]);

    //重置默认后的i
    `log("default i:"@default.i);
    }

    defaultproperties
    {
    s="hello world";
    i=1;
    f=1.5000;
    ar(2)=2;

     
     
     
  • 相关阅读:
    poj2631 Roads in the North(求树的直径)
    P3809 【模板】后缀排序
    P3376 【模板】网络最大流dinic算法
    3224: Tyvj 1728 普通平衡树
    034 Android IntentService 的使用
    033 Android 绑定Service并与之通信
    032 Android Service
    031 Android 异步任务(AsyncTask)
    030 Android 线程+Handler的使用
    029 Android WebView的使用(用来显示网页)
  • 原文地址:https://www.cnblogs.com/wodehao0808/p/6104760.html
Copyright © 2011-2022 走看看