7分鐘左右視頻求解
7分鐘左右的視頻不是很懂啊,如果Infantry能訪問類Person的數據成員和成員函數,怎么能說明soldier保護繼承的父類的數據成員和成員函數在protected內,如果在public里面Infantry不是更應該能訪問到person的數據成員和成員函數嗎。求解
7分鐘左右的視頻不是很懂啊,如果Infantry能訪問類Person的數據成員和成員函數,怎么能說明soldier保護繼承的父類的數據成員和成員函數在protected內,如果在public里面Infantry不是更應該能訪問到person的數據成員和成員函數嗎。求解
2016-07-04
舉報
2016-10-08
首先,Soldier類保護繼承Person類,Infantry公有繼承Soldier類。這個時候Soldier的對象不能調用Person類中的work成員函數,說明Person中數據成員和成員函數不在其(Soldier)public下(因為Person中work的訪問屬性為public,如果是公有繼承肯定可以訪問)。那就剩下保護繼承(私有繼承情況更是不能)了。而Infantry是公有繼承Soldoer類,如果Infantry中成員可以訪問Person中的數據成員和成員函數也就說明了Soldier類中的成員可以訪問Person中的數據成員和成員函數,即保護繼承。
2016-07-04
我覺得Infantry類是公有(public)繼承自soldiler類中那么其就能訪問soldier類中的公有(public)成員和受保護(protected)的成員,能掉用Personer類中的公有和受保護的成員(我覺得只能說名他的派生類soldlier繼承了(相當與存儲了)了基類的公有成員和受保護的成員在 公有或受保護的作用域類,)但應為之前證明了如果其基類的公有成員派生類不能調用,所有排除了,在公有成員的作用域,所以在protected作用域內(soldlier是protected繼承person)。
2016-07-04
能調用不就是嘍? 步兵類能訪問person的數據成員和成員函數 不過數據成員不能直接訪問