Недопонимание с приватной статической переменной класса

Почему к приватной статической переменной класса я могу получить доступ из глобальной области видимости, а из функции не могу ?

#include <iostream>

class test
{
private:
    static int a;
};

int test::a = 5;  // ОК

int main()
{
    test::a = 10;  // ОШИБКА
    return 0;
}

Ответы (0 шт):