麻烦看看,谢谢了

whowho 2004-04-09 04:50:14
#include <stdlib.h>
#include <stdio.h>
#include <iostream>
int randomlevel(void) //随机返回级别
{
int level;
for(level=0;(int)(2/(float)RAND_MAX * rand()); level++);
return level;
}
class level_node;
union node
{
int _value;
level_node *next;
};
class level_node
{
private:
int _value;
int level;
node *array_node;
public:
level_node(int level=0,int val=0):_value(val)
{
level=level+2;
array_node=new node[level];
array_node[0]._value=_value;
for(int i=1;i<level;i++)
array_node[i].next=NULL;
}
int value(){return array_node[0]._value;};
level_node *forward(int i){i++;if(i>=1&&i<level)return array_node[i].next;};
void set_next(int i,level_node *s)
{
i++;
if (i>=1&&i<level) array_node[i].next=s;
}
~level_node(){delete [] array_node;};
};

void main()
{
level_node *s=new level_node(0,10);
level_node *s1=new level_node(0,11);
cout<<s->value()<<endl;
s->set_next(0,s1);
cout<<s->forward(0)->value()<<endl;
system("pause");
}

...全文
21 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cgsw12345 2004-04-09
  • 打赏
  • 举报
回复
来晚了,上面兄弟都调试好!
只能下次了 :)
RookieStar 2004-04-09
  • 打赏
  • 举报
回复
#include <stdlib.h>
#include <stdio.h>
#include <iostream>

using namespace std; //用了不带.h的iostream,别忘了加上这句命名空间

int randomlevel(void) //随机返回级别
{
int level;
for(level=0;(int)(2/(float)RAND_MAX * rand()); level++);
return level;
}
class level_node;
union node
{
int _value;
level_node *next;
};
class level_node
{
private:
int _value;
int level;
node *array_node;
public:
level_node(int level=0,int val=0):_value(val)
{
level=level+2;
array_node=new node[level];
array_node[0]._value=_value;
for(int i=1;i<level;i++)
array_node[i].next=NULL;
}
int value(){return array_node[0]._value;};
level_node *forward(int i){i++;if(i>=1&&i<level)return array_node[i].next;return NULL;}; //这里有个warning,注意一下!
void set_next(int i,level_node *s)
{
i++;
if (i>=1&&i<level) array_node[i].next=s;
}
~level_node(){delete [] array_node;};
};

void main()
{
level_node *s=new level_node(0,10);
level_node *s1=new level_node(0,11);
cout<<s->value()<<endl;
s->set_next(0,s1);
cout<<s->forward(0)->value()<<endl;
system("pause");
}

64,654

社区成员

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

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