我想在X ++中存儲對象列表。我讀過msdn中的數組和容器不能存儲對象,所以唯一的選擇是創建一個Collection的列表。我寫了下面的代碼,並嘗試使用Collection = new List(Types::AnyType);
和Collection = new List(Types::Classes);
,但兩者都不起作用。請看看我是否在以下工作中犯了一些錯誤。對象集合
static void TestList(Args _args)
{
List Collection;
ListIterator iter;
anytype iVar, sVar, oVar;
PlmSizeRange PlmSizeRange;
;
Collection = new List(Types::AnyType);
iVar = 1;
sVar = "abc";
oVar = PlmSizeRange;
Collection.addEnd(iVar);
Collection.addEnd(sVar);
Collection.addEnd(oVar);
iter = new ListIterator(Collection);
while (iter.more())
{
info(any2str(iter.value()));
iter.next();
}
}
此外,我們不能將一些變量或對象轉換爲Anytype變量,我讀出類型轉換自動完成這種方式;
anytype iVar;
iVar = 1;
但是在運行時拋出一個錯誤,期望類型是Anytype,但是遇到的類型是int。第一
評論#1 運行job2時得到此異常... 執行代碼時出錯:轉換函數的參數類型錯誤。 堆棧跟蹤 (C)\作業\作業2 - 線6 –
@BilalSaeed - 評出「的Ivar = 1」,並且將anytype類型被綁定到一個串和any2str將工作。 –
刪除'any2str',它不適用於綁定到int的'anytype'! –