派生类成员函数调用时 error C2248: 无法访问 protected 成员 的排雷之路

孤人 提交于 2020-01-28 20:02:37

工作需要自定义一个控件,结果调用成员函数总是报错!
如下图:
派生类成员函数调用时 error C2248:  无法访问 protected 成员 的排雷之路
理论上继承关系和函数权限public都没有问题,可是只要一使用自定义的成员函数就会报error C2248: 无法访问 protected 成员 ,查了很久资料,总算试出了解决方案,就是加强制声明public:即在成员函数声明时强制在前面加public:,对于上例就是在自定义SetTextEx前面加。如图:
派生类成员函数调用时 error C2248:  无法访问 protected 成员 的排雷之路
原因分析:
语法上没有问题就可能是编译器编译时默认给继承类的成员函数都默认加了protected 的属性,虽然是放在public区域,可是编译时还是默认被编译成了protected 的函数,所以在函数前加入public:强制绑定成public类型的就能正常编译使用了。希望能帮后来者节省点排雷时间。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!