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