language/C/C++

클래스내의 배열변수의 크기를 상수로 지정하고 싶을 때

란마12 2014. 12. 11. 22:05

class Base {

    int const constant;

public:

    virtual ~Base() = 0; // Makes this an abstract base class.

protected:

    Base(int c) : constant(c) { }

};


// Must be implemented!

Base::~Base() { }


class Derived : public Base {

    int const constant2;

public:

    //static const int constant1; //error C2057: 상수 식이 필요합니다.

    enum { constant1 = 1 };

    int aaa[constant1];

    Derived() : Base(42), constant2(2) { }

};