C++ class template for notification management
Your class seems generally well done and easy to use.  I have only a few suggested improvements.

Add text to throws

It would be useful to have something other than a null string when the object throws an error.  

Add text to the static_assert

The same issue exists for the static_assert in that it would be useful to provide a meaningful error message instead of an empty string.

Provide some comments

Because the class is compact and generally well written, not much explanation is required, but a brief explanation, especially noting which exceptions might be thrown, would be useful.