2015-06-22 112 views
0

MEL中聲明它們時是否必須初始化變量,特別是字符串?Maya MEL變量聲明和初始化

我知道這是沒有必要的初始化字符串數組:

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

但是對於字符串和其他變量類型?是否可以接受:

string $str; 
$str = "abc"; 

或者應該總是用雙引號來初始化它?

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

回答

1

你並不需要填充的變量,用類型聲明初始化將其設置爲默認值(0的整數,0.0花車,和「」字符串)。一般來說它是在指定的地方當初始變量是有意義的好做法:

string $topCamera = "|top|topShape"; 

但它是很好,當你需要佔位符,但沒有價值還沒有宣佈一個空變量;

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

在該示例中聲明$ cameraCount爲0並沒有什麼壞處,但它只是額外的輸入。

插入強制性警告來學習Python而不是在這裏

0

作爲一般規則,最好是顯式聲明它被定義當一個變量的類型。這可確保您不依賴於 Maya來自動爲您確定變量類型。

Complete Maya Programming 1

使用string $str;