您好,登錄后才能下訂單哦!
調用成員函數總是報錯無法訪問protected成員怎么辦?相信很多新手小白對此束手無策,通過這篇文章的總結,希望你能找到解決的方法。
工作需要自定義一個控件,結果調用成員函數總是報錯!
如下圖:
理論上繼承關系和函數權限public都沒有問題,可是只要一使用自定義的成員函數就會報error C2248: 無法訪問 protected 成員 ,查了很久資料,總算試出了解決方案,就是加強制聲明public:即在成員函數聲明時強制在前面加public:,對于上例就是在自定義SetTextEx前面加。如圖:
原因分析:
語法上沒有問題就可能是編譯器編譯時默認給繼承類的成員函數都默認加了protected 的屬性,雖然是放在public區域,可是編譯時還是默認被編譯成了protected 的函數,所以在函數前加入public:強制綁定成public類型的就能正常編譯使用了。
以上就是調用成員函數總是報錯無法訪問protected成員的解決方法了,看完之后是否有所收獲呢?如果想了解更多相關內容,歡迎關注億速云行業資訊!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。