オブジェクトのリストをX++に保存したい。配列とコンテナはオブジェクトを格納できないことをmsdnで読んだので、唯一のオプションはコレクションのリストを作成することです。私は次のコードを書いて使用しようとしまし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です。