游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1369|回复: 4

拷贝构造函数问题

[复制链接]

18

主题

21

帖子

27

积分

注册会员

Rank: 2

积分
27
发表于 2007-4-14 14:16:00 | 显示全部楼层 |阅读模式
定义一个oldParticle来拷贝构造函数Particles里的各项属性值
struct Position
{
float x;
float y;
float z;
};

struct Color
{
float R;
float G;
float B;
};

class Particles
{
public:

Particles(float x, float y, float z);
         Particles(const Particles &p)
void Render();
bool dead;
private:
Position Pos;
Color Col;
float speed;
float speed_acc;
float alpha;
float alpha_dec;
float size;
};
//数据更新

if(fps==0) fps=30;
Particles oldParticle( *this );//(这句话是调用oldParticle的属性值,也就是在particles那里拷贝过来的属性值)
speed+=speed_acc;
Pos.y +=speed;
alpha-=alpha_dec;
size-=0.05f*(30/fps);

Pos.x +=-Pos.x/30.0f;
Pos.z +=-Pos.z/30.0f;

if(alpha<=0.0f) dead=true;
}



Particles:articles(float x, float y, float z)
{
Pos.x = x;
Pos.y = y;
Pos.z = z;
Col.R = 1.0f;
Col.G = 1.0f;
Col.B = 0.8f;
speed = 0.2f;
speed_acc = GetRandom(0.013f, 0.015f);
alpha = 1.0f;
alpha_dec = GetRandom(0.033f, 0.03301f);
size=4.0f;
dead = false;
}
  Particles::Particles(const Particles &p){
this-&gtos.x = p.Pos.x;
this->Pos.y = p.Pos.y;
this->Pos.z = p.Pos.z;
this->Col.R = p.Col.R;
this->Col.G = p.Col.G;
this->Col.B = p.Col.B;
this->speed = p.speed;
this->speed_acc = p.speed_acc;
this->alpha = p.alpha;
this->alpha_dec = p.alpha_dec;
this->size = p.size;
this->dead = p.dead;
}
不知道哪里出了问题,哪位大哥帮我改下啊`最好能具体点..谢谢了

0

主题

199

帖子

199

积分

注册会员

Rank: 2

积分
199
发表于 2007-4-15 12:33:00 | 显示全部楼层

Re:拷贝构造函数问题

到底出了什么问题都不说清楚
谁要是愿意看这一堆代码真是大好人呀

2

主题

86

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2007-4-15 13:43:00 | 显示全部楼层

Re:拷贝构造函数问题

....我是个大好人,代码都看完了,但不说明出了什么问题,我这个大好人也帮不了你

2

主题

86

帖子

88

积分

注册会员

Rank: 2

积分
88
发表于 2007-4-15 13:52:00 | 显示全部楼层

Re:拷贝构造函数问题

我只是粗略看了一下,如果有人一行一行研究究竟有什么问题那就真是大大大好人了

8

主题

716

帖子

716

积分

高级会员

Rank: 4

积分
716
发表于 2007-4-27 14:19:00 | 显示全部楼层

Re:拷贝构造函数问题

我不是好人,但还是仔细看了
下面这一句我实在看不懂是为什么,下面也没见着用到这个old的变量
Particles oldParticle( *this );//(这句话是调用oldParticle的属性值,也就是在particles那里拷贝过来的属性值)

就语法上我看不出什么问题
所以,请先练习用中文表达清楚你想描述的事情,做到了,你才有可能用c/c++用code来讲给机器听
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-26 16:59

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表