Существует ли широко используемый базовый класс «тег» для статических классов C++?C++

Программы на C++. Форум разработчиков
Anonymous
Существует ли широко используемый базовый класс «тег» для статических классов C++?

Сообщение Anonymous »

В C++ есть несколько широко используемых базовых классов нулевого размера, используемых для «маркировки» подклассов, например boost::noncopyable.
Есть ли какой-нибудь класс, который используется для обозначения невозможности создания экземпляра класса, например «статический класс» в C# или Java?
Прежде чем вы скажете мне, мне следует использовать для этого пространство имен: my у класса есть аргументы шаблона, а у пространств имен нет.
Если нет принятого «тега», существует ли шаблон, который компилятор может использовать для распознавания шаблона статического класса и выдачи предупреждений в случае случайного создания нестатического члена?
template
struct X
{
~X() = delete;

static int N; // I don't need this but static data members are typically allowed for static classes
int x; // warning please!
static bool f(typename my_trait::f_arg arg); // ok
bool g(); // warning please!
};


Подробнее здесь: https://stackoverflow.com/questions/797 ... ic-classes

Вернуться в «C++»