类内 有两个public

wolfkoala 2009-03-17 02:11:33
class CWave:public CObject
{
public:
CWave();
virtual~CWave();
public:
BOOL Open(CString waveFileName);
void Close();
void Stop();
BOOL play(CWnd*pWnd);
protected:
MCI_OPEN_PARMS openParms;
WORD m_wDeviceID;
BOOL m_bOpened;
};
/////////////////////////////
上面的类中为什么有两个public? 可以写成一个么? 一个与两个有什么区别?
...全文
577 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuizhiyun 2009-03-18
  • 打赏
  • 举报
回复
忘了,还有保护的
shuizhiyun 2009-03-18
  • 打赏
  • 举报
回复
没有区别,可能是为了分类
我习惯的顺序是:
friend成员
构造函数
公有接口
静态公有接口
公有成员变量
静态仅有成员变量
私有接口
静态么有接口
静态成员变量
私有成员变量
kostion 2009-03-18
  • 打赏
  • 举报
回复
一个函数写一个public也没问题。你就是不写,编译的时候,编译器也会一个上面加一个public
ufdxkm 2009-03-18
  • 打赏
  • 举报
回复
和一个没区别
pengzhixi 2009-03-17
  • 打赏
  • 举报
回复
像访问控制符,你想写多少就写多少,没规定,public,private,protected每样只许一个。
APIandMFC 2009-03-17
  • 打赏
  • 举报
回复
可以写成一个.

没有语法上的区别,只是个人编码习惯不同.
霍大脚 2009-03-17
  • 打赏
  • 举报
回复
你想几个就几个只要你不顾可读性的话
sjhui19840325 2009-03-17
  • 打赏
  • 举报
回复
按自己习惯分类来写 清楚明了
lq651659889 2009-03-17
  • 打赏
  • 举报
回复
没区别,自己风格问题。
jssz103b 2009-03-17
  • 打赏
  • 举报
回复
可能是别人修改类时增加的/个人风格 对类的其它成员没有任何影响
lizhizhe2000 2009-03-17
  • 打赏
  • 举报
回复
写成多个易读,是一种好的编程习惯
mengde007 2009-03-17
  • 打赏
  • 举报
回复
没啥区别,只不过是为了将类的构造,析构与其他成员函数分开显示,一目了然。一种代码风格。
夹心饼干 2009-03-17
  • 打赏
  • 举报
回复
应该属于个人风格问题吧,跟着学习了
feng4206yu 2009-03-17
  • 打赏
  • 举报
回复
例如第一个public表示系统公用...第二个public表示是自己额外定义的...
chin_chen 2009-03-17
  • 打赏
  • 举报
回复
随便你写几个都可以的。这个是系统自己添加的。可以写在一起的。
hemiya 2009-03-17
  • 打赏
  • 举报
回复
没区别,个人习惯问题。
arong1234 2009-03-17
  • 打赏
  • 举报
回复
如果中间没有出现protected/private,无论多少个都是一样的
我不同意1楼,实际多个public才更应该推荐,原因是你在两个public之间插入其他关键字可能不会引起问题。当你一个类很大时,如果你中间插入一个protected节,可能不小心修改了后续代码的访问控制

[Quote=引用 2 楼 wolfkoala 的回复:]
一个和两个有什么区别呢?
[/Quote]
zgjxwl 2009-03-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wolfkoala 的回复:]
一个和两个有什么区别呢?
[/Quote]
没什么区别。只是个控制接口而已。
叶落寒山 2009-03-17
  • 打赏
  • 举报
回复
类书写的风格问题。

class CWave:public CObject
{
public:
CWave();
virtual~CWave();
public:
BOOL Open(CString waveFileName);
void Close();
void Stop();
BOOL play(CWnd*pWnd);
protected:
MCI_OPEN_PARMS openParms;
WORD m_wDeviceID;
BOOL m_bOpened;
};

我一般构造函数、析构函数在最开头。
下面是public型函数,即该类的对外函数;再下面是protected、private函数,即类的内部函数,不对外公开。
函数最后是变量定义。也按上面的规则排列。这样结构清晰,适合自己和他人阅读。
Baruch_Alex 2009-03-17
  • 打赏
  • 举报
回复
可以写成一个,觉得是一个风格的问题,自己是什么风格就不要变了哦,这样可能看起来比较清楚,构造析构放在一起
加载更多回复(2)

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧