2012-06-16 4 views

Odpowiedz

4

Tak, static_assert() może być umieszczony wszędzie tam, gdzie deklaracja może. Obejmuje to ciało klasy:

class C { 
public: 
    enum E { 
     A, B, C, 
     NumEes 
    }; 
    constexpr Foo foos[] = { {...}, {...}, {...} }; 
    static_assert(NumEes == sizeof foos/sizeof *foos, "size mismatch"); 

    // ... 
};