【问题标题】:Maya MEL variables declaration and initializationMaya MEL 变量声明和初始化
【发布时间】:2015-06-23 01:02:50
【问题描述】:

在 MEL 中是否必须在声明变量时初始化变量,尤其是字符串?

我知道不需要初始化字符串数组:

string $buffer[];
$buffer[0] = "abc";

但是字符串和其他变量类型呢?是否可以接受:

string $str;
$str = "abc";

还是应该始终使用双引号来初始化它?

string $str = "";
$str = "abc";

【问题讨论】:

    标签: variables maya mel


    【解决方案1】:

    您不需要填充变量,使用类型声明对其进行初始化会将其设置为默认值(0 表示整数,0.0 表示浮点数,“”表示字符串)。一般来说,当初始变量有意义时,最好在原地赋值:

    string $topCamera  = "|top|topShape";
    

    但是当你需要占位符但还没有值时,可以声明一个空变量;

    int $cameraCount;
    // make some cameras here;
    $cameraCount = size(`ls -type camera`);
    

    在该示例中将 $cameraCount 声明为 0 并没有什么坏处,但这只是额外的输入。

    在此处插入学习 python 的强制性警告

    【讨论】:

      【解决方案2】:

      作为一般规则,最好在定义变量时显式声明变量的类型。这样可以确保您不依赖 Maya 会自动为您确定变量类型。

      来自 Complete Maya Programming 1

      使用string $str;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多