私有枚举类型为何不能被友员函数调用? 我用的是vc++6.0,总是提示无法调用。请问为什么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 私有(private)当然不行;保护(protected)才可以。 我在类的private中定义了一个,然后用友员函数调用。提示不可以调用 关注,至少C++Primer里面说私有成员,友元是可以访问它的 class test{ enum {A,B,C}; friend void Do( );};void Do(){ printf("%d\n" , test::B );}int main(){ Do();} 我的友员定义是pubilc。这样可以吗? public:protected:private:即使是friend,也不能访问private的东西,但可以访问proteced内的数据和方法 写错了,友元函数可以访问private, 继承的类不能访问private private当然不行了,得是protected或public的 友元可以访问 private为什么private枚举 不行? 友元可以访问 private为什么private枚举 不行?---------------------------------------------试过了,友元是可以调用的.LZ再检查一下.把你的代码帖出来,看哪错了. class test{enum {A,B,C};friend void Do( );};void Do(){printf("%d\n" , test::B );}int main(){Do();}这样是没问题的. vs2005自己带没带启动画面的控件? 急问:为什么我做的程序在有的机器上能弹出对话框,有的机器就不行呢 线程间通信的问题,请指教 控件 关于添加ActiveMovie控件的问题 char * 怎么与CString 型变量之间实现无误转换(现在怎么把str中的值存到chr中呢?请高手们指点一二,小生不无感激之情) 多文档工程中怎么使用SCrollBar? 想要成为一名VC++合格的程序人员应该具有那些知识? 怎样用ADO读DBF文件,能给段代码吗? 想破脑袋的组件访问问题 问一个关于按扭高亮显示的问题 这个表达式还能优化吗?
保护(protected)才可以。
{
enum {A,B,C};
friend void Do( );
};
void Do()
{
printf("%d\n" , test::B );
}int main()
{
Do();
}
protected:
private:即使是friend,也不能访问private的东西,但可以访问proteced内的数据和方法
继承的类不能访问private
友元可以访问 private为什么private枚举 不行?
---------------------------------------------
试过了,友元是可以调用的.LZ再检查一下.把你的代码帖出来,看哪错了.
class test
{
enum {A,B,C};
friend void Do( );
};
void Do()
{
printf("%d\n" , test::B );
}int main()
{
Do();
}
这样是没问题的.