队列中的节点指针如何访问节点的私有数据

face-sea 2013-11-30 08:58:49
class queue_node
{
private:
treeNode* address;
queue_node* next;
public:
treeNode* address;
queue_node* next;
queue_node(treeNode* address)
{
this->address = address;
next = NULL;
}
};

class Queue
{
private:
queue_node* front;
queue_node* rear;
public:
queue_node* front;
queue_node* rear;
Queue();
void in_queue(treeNode* T);
void out_queue();
treeNode* get_top();
void brother_in_queue(treeNode* current);
};
...全文
100 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
worldy 2013-11-30
  • 打赏
  • 举报
回复
在节点中,加人友员类
Adol1111 2013-11-30
  • 打赏
  • 举报
回复
引用 4 楼 u011070297 的回复:
友元类或者其他可不可以实现
可以是可以,但是友元对于OO来说不是好设计,应该尽量找其他代替方法。 就你这里来说,也可以完全不需要封装,直接访问就好了。对于常见的数据结构,封装反而麻烦了。
face-sea 2013-11-30
  • 打赏
  • 举报
回复
友元类或者其他可不可以实现
Adol1111 2013-11-30
  • 打赏
  • 举报
回复
引用 2 楼 u011070297 的回复:
但是我已经在Queue中声明了queue_node* front;queue_node* rear;这样的指针 为何不能直接访问呢
private成员只有类本身才能访问,对象和指针是不能访问的。
face-sea 2013-11-30
  • 打赏
  • 举报
回复
但是我已经在Queue中声明了queue_node* front;queue_node* rear;这样的指针 为何不能直接访问呢
Adol1111 2013-11-30
  • 打赏
  • 举报
回复
private数据,一般在public里加入get、set方法来进行访问和修改。自己写一个呗。

64,654

社区成员

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

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