//建立乙個方法
codemembermethod pcodemembermethod = new codemembermethod();
pcodemembermethod.name = "teststring";
/**********************************開始設定多維陣列******************************/
//初始化--陣列值--陣列
codeprimitiveexpression pcodeprimitiveexpression2 = codeprimitiveexpressions(1, 2, 2, 2, 2);
//初始化--陣列設定--陣列
codearraycreateexpression pcodearraycreateexpression = new codearraycreateexpression(typeof(system .int32) , pcodeprimitiveexpression2 ) ;
//初始化--設定變數--陣列
codevariabledeclarationstatement pcodevariabledeclarationstatement2 = new codevariabledeclarationstatement(typeof(system.int32), "nlowerbounds", pcodearraycreateexpression);
//初始化--向方法內部新增語句--陣列
pcodemembermethod.statements.add(pcodevariabledeclarationstatement2);
//初始化--陣列值--陣列
codeprimitiveexpression pcodeprimitiveexpression3 = codeprimitiveexpressions(0,0,0,0,0);
//初始化陣列設定--陣列
codearraycreateexpression pcodearraycreateexpression2 = new codearraycreateexpression(typeof(system.int32), pcodeprimitiveexpression3);
//初始化--設定變數--陣列
codevariabledeclarationstatement pcodevariabledeclarationstatement3 = new codevariabledeclarationstatement(typeof(system.int32), "nlengths", pcodearraycreateexpression2 );
//初始化--向方法內部新增語句--陣列
pcodemembermethod.statements.add(pcodevariabledeclarationstatement3 );
//初始化完後,建立多維陣列
codevariabledeclarationstatement pcodevariabledeclarationstatement4 = new codevariabledeclarationstatement
(typeof(system.array), "parray",
new codemethodinvokeexpression(
new codetypereferenceexpression(typeof(system.array)), "createinstance",
new codetypeofexpression(typeof(system.int32)), new codevariablereferenceexpression ("nlowerbounds"),new codevariablereferenceexpression("nlengths")));
/**********************************完成設定多維陣列******************************/
//向方法內部新增多維的建立陣列
pcodemembermethod.statements.add(pcodevariabledeclarationstatement4);
/***********************開始引數賦值*********************************************/
public static codeprimitiveexpression codeprimitiveexpressions(params object obj)
return pcodeprimitiveexpressions;
}/***********************結束引數賦值*********************************************/
上面的**很亂,不能一目了然,其實用codedom建立多維陣列的方法就是呼叫system.array類中createinstance()方法,此方法可動態建立乙個多維陣列。
建立多維陣列
3種方法 1 利用索引生成陣列 2 利用函式 randn ones和zeros 生成陣列 3 利用cat函式生成多維陣列 1 索引法 a rand 3 建立3階隨機數組 a 0.9649 0.9572 0.1419 0.1576 0.4854 0.4218 0.9706 0.8003 0.9157 ...
python中建立指定大小的多維陣列
python中建立指定大小的二維陣列,有點像c 中進行動態申請記憶體建立陣列,不過相比較而言,python中更為簡單一些。建立n行m列的二維陣列 n 2 m 3 matrix none 2 for i in range len matrix matrix i 0 3 print matrix 當然也...
new動態建立陣列?(new建立多維陣列)
在使用陣列時我們難免會感覺陣列的靈活性太低,所以new成了我們使用頻率很高的乙個操作符。int p 2 int p2 2 2 int p3 2 2 2 這是最常規的操作。接下來上new的用法 new的第一種用法 int p newint 5 int p2 4 newint 5 4 int p3 4 ...