0

我有以下课程。

class CA {
...
};

class CB: public vector<CA> {
...
};

我应该如何实现 CB 的复制构造函数?IE,

CB(CB& cb).

如何将 cb 的向量的内容复制进去?

4

1 回答 1

1

忽略从std::vector.Foostd::vector在继承层次结构中的位置:

#include <iostream>

struct Foo
{
  Foo() {}
  Foo(const Foo&) { std::cout << "Copy Foo\n";}
};

struct Bar : public Foo
{
  Bar() {}
  Bar(const Bar& b) : Foo(b) {}
};

int main()
{
  Bar b1;
  Bar b2(b1);
}
于 2013-02-26T10:56:28.217 回答