Случай использования:
class A {
static int s_common;
public:
static int getCommon () const { s_common; };
};
Обычно это приводит к ошибке:
error: static member function 'static int A:: getCommon() не может иметь CV-классификатор
Это связано с тем, что const
ness применяется только к объекту, на который указывает this
, который отсутствует в функции-члене static
.
Однако, если бы это было разрешено, функция члена static
"const" могла быть легко связана с членами данных static
.
Почему эта функция отсутствует в С++; любая логическая причина этого?