Почему производный класс не может получить доступ к защищенному члену своего базового класса через указатель на базу?

Этокод:

class TestA
{
protected:
    int test=12;

public:
    TestA() {
        cout << "test a: " << test << endl;
    }
    ~TestA() {
    }
};

class TestB : public TestA
{   
public:
    TestB(TestA *testA) {
        cout << "test b: " << testA->test;
    }
    ~TestB() {
    }
};

int main ()
{
    TestA *pTestA=new TestA();
    TestB *pTestB=new TestB(pTestA);
}

Я пытаюсь получить доступ кprotected член, используя указатель, указывающий наTestA тип объекта (таким образом, экземплярTestA).TestB также происходит отTestA

Почему я не могу получить к нему доступ? Это доступно только "в" классе, где мне это нужно? Не снаружи, используя указатель / прямые объявления?

Ответы на вопрос(2)

Ваш ответ на вопрос