模板参数中的静态断言

Ale*_*ily 0 c++ static-assert c++11

我想问一下是否可以在模板参数中插入静态断言。

假设我想创建类,StaticArray<T,N>并且我想让用户无法实例化大小等于 0 的类。有什么办法可以static_assert(N != 0, "error message")在我的类中插入类似的东西?

Pio*_*cki 6

template <typename T, std::size_t N>
class StaticArray
{
    static_assert(N != 0, "error message");
};
Run Code Online (Sandbox Code Playgroud)

LIVE DEMO