溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

調(diào)用成員函數(shù)總是報(bào)錯(cuò)怎么辦

發(fā)布時(shí)間:2020-06-03 20:34:45 來(lái)源:億速云 閱讀:487 作者:Leah 欄目:編程語(yǔ)言

調(diào)用成員函數(shù)總是報(bào)錯(cuò)無(wú)法訪問(wèn)protected成員怎么辦?相信很多新手小白對(duì)此束手無(wú)策,通過(guò)這篇文章的總結(jié),希望你能找到解決的方法。

工作需要自定義一個(gè)控件,結(jié)果調(diào)用成員函數(shù)總是報(bào)錯(cuò)!
如下圖:
調(diào)用成員函數(shù)總是報(bào)錯(cuò)怎么辦
理論上繼承關(guān)系和函數(shù)權(quán)限public都沒(méi)有問(wèn)題,可是只要一使用自定義的成員函數(shù)就會(huì)報(bào)error C2248:  無(wú)法訪問(wèn) protected 成員 ,查了很久資料,總算試出了解決方案,就是加強(qiáng)制聲明public:即在成員函數(shù)聲明時(shí)強(qiáng)制在前面加public:,對(duì)于上例就是在自定義SetTextEx前面加。如圖:
調(diào)用成員函數(shù)總是報(bào)錯(cuò)怎么辦
原因分析:
語(yǔ)法上沒(méi)有問(wèn)題就可能是編譯器編譯時(shí)默認(rèn)給繼承類的成員函數(shù)都默認(rèn)加了protected 的屬性,雖然是放在public區(qū)域,可是編譯時(shí)還是默認(rèn)被編譯成了protected 的函數(shù),所以在函數(shù)前加入public:強(qiáng)制綁定成public類型的就能正常編譯使用了。

以上就是調(diào)用成員函數(shù)總是報(bào)錯(cuò)無(wú)法訪問(wèn)protected成員的解決方法了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI