Защищенные члены данных позволяют сделать данные или функции доступными только для производных классов. То есть эти данные будут доступны при наследовании и все. Это главное отличие от публичных. А отличие от приватных, что они вообще доступны при наследовании.
Visual C++.Net
Visual Basic.Net
CSharp
Visual C++.Net
class CMyClass
{
protected:
int ii;
};
class CMyNewClass : public CMyClass
{
void Test();
};
void CMyNewClass::Test()
{
ii=5;
}
Visual Basic.Net
Class CMyClass
Protected i As Integer
End Class
Class CMyNewClass
Inherits CMyClass
Public Sub Test()
i = 5
End Sub
End Class
CSharp
class CMyClass
{
protected int i;
}
class CMyNewClass : CMyClass
{
void Test()
{
i=55;
}
}