Yes you are correct: enum { value = true }; doesn't occupy any memory.
Furthermore, prior to C++11 it was pretty much the only way of achieving this: static const bool value = true; is only legal in a class definition from C++11 onwards. Although a constexpr might be preferred.