-2

考虑以下:

 class a
 {
  int p;
   a(int x)
    {
    p=x;
 }
 }

class b
{ vector<a> var;
   b(*type*a l)
    {
     new var;
     var(l);
     }
 }

基本上,我试图创建一个类('a')的向量并从另一个类中调用它。几个问题——

1) 在 b 类中,'new var' 的位置是否正确?当我定义向量 var 时,我应该在构造函数之外还是在构造函数内部声明它?这些情况是什么意思。

2)主要,我也想声明一个b类的向量。我该怎么做?

Vector<b>  ex = new Vector<b> (100,5); sound right? 

即,100 是大小,5 是达到满负荷时应该增加的数量?

我可以不指定大小并通过 addElement() 继续添加吗? - 向量类型会自动增加其大小吗?

3)因此,要访问b的第i个元素,以及b的成员变量'var'的第j个元素,我将如何指定它?这对吗?

 ex[i].var.get[j] ?

我只是从这一切开始,所以请耐心等待。我是一个真正的新手。

4

1 回答 1

1

首先,如果您指的是java.util.Vector不要使用它,除非您知道自己在做什么。改为使用java.util.ArrayList

下面展示了如何声明和初始化一个包含类型对象的 ArrayList a

class b { 

    private ArrayList<a> var = new ArrayList<a>(); // declare & intialize like this

    b(a l) {
        var.add(l);
    }
}

一个 ArrayList 的 ArrayList...

ArrayList<ArrayList<Foo>> foo = new ArrayList<ArrayList<Foo>>();

// initialize foo

foo.get(0).get(2);  // like foo[0][2] if foo were an array
于 2012-11-15T04:05:49.100 回答