为什么我可以制作抽象对象的矢量?

时间:2012-12-16 14:46:12

标签: c++ vector abstract-class

为什么这段代码会编译?

#include <vector>
using namespace std;

class A
{
        virtual void a() = 0;
};

int main()
{
        vector<A> a;    //won't fail
        //A b;            //that will
}

1 个答案:

答案 0 :(得分:6)

因为模板。你不会发生任何事情。尝试使用resize()或其他方法。那应该会失败。

相关问题