2014-11-14 75 views
1

這個link討論了允許更多限制訪問派生類的方法。爲什麼C++允許對派生類方法進行更嚴格的訪問?

問:在C++中允許這個的原因是什麼?

諸如Java &這樣的語言C#不允許它。在某些情況下它有用嗎?如果是這樣,請幫助我理解。

+0

什麼是鏈接?讓這個問題對未來的讀者也有用。 – Bathsheba 2014-11-14 16:57:39

+3

C++和Java和C#是不同的語言。他們有不同的哲學。 – 2014-11-14 17:01:21

回答

3

它有更多的與它永遠不被允許。現在已經太晚了:太多的代碼會被破壞。請記住,C++是一種比Java或C#更老的語言。

但是C++哲學激勵你問「爲什麼不允許它?」。它可能甚至是有用的:一些民間利用它,並使重寫的方法私人。您應該附加到私有方法的文檔數量可能遠遠少於公共方法。這意味着你不要重複自己,不得不依靠基類中的公共/受保護的方法進行評論。

相關問題