抽象类的大小

web*_*ius 3 c++ sizeof abstract

如何找到抽象类的大小?

class A
{
    virtual void PureVirtualFunction() = 0;
};
Run Code Online (Sandbox Code Playgroud)

由于这是一个抽象类,我无法创建此类的对象.如何使用'sizeof'运算符找到抽象类A的大小?

Mar*_*tos 9

可以使用sizeof运营商:

int a_size = sizeof(A);
Run Code Online (Sandbox Code Playgroud)

  • @webgenius:您不需要实例化一个类来了解它的大小.`sizeof`没有评估任何东西.你可以做`sizeof(*(A*(0)))`.@Marcelo:将结果存储在`size_t`中.`int`是双坏的,因为大小永远不会小于1(ergo永远不会为负),所以至少使用无符号类型. (2认同)