我正在尝试实施的方案的简单示例
class ATest
{
int a;
int b;
BTest[];
}
class BTest
{
int X;
int Y;
}
ATest
和BTest
。Atest[] aobj = new Atest[count];
(此计数值将以编程方式设置)B
对象数组并将其分配给A
目前我假设count的静态值并将其分配
Atest[] aobj = new Atest[20];
BTest[] bobj = new BTest[1];
bobj[0] = new Btest();
aobj[0] = new ATest();
aobj[0].BTest = bobj;
BTest[] bobj1 = new BTest[1];
bobj1[0] = new Btest();
aobj1[0].BTest = bobj1;
这可能不是编码的最佳方式。
请建议动态实施它
- 动态创建多个BTest
对象数组,并为ATest
实例分配
答案 0 :(得分:2)
尝试使用构造函数:
class ATest {
int a;
int b;
BTest[] btests;
public ATest(int numOfB) {
btests = new BTest[numOfB];
}
}
您可以在一个简单的循环中创建和初始化您的测试:
int M = 20; // Number of Test A objects
int N = 10; // Number of Test B objects per Test A
var atests = new ATest[M];
for (var i = 0 ; i != M ; i++) {
atests[i] = new ATest(N);
}