【发布时间】:2011-05-12 13:07:39
【问题描述】:
嘿,我在想我是否可以创建一个类的实例......
我的问题是我正在为行星及其卫星创建 3D 球体,我将其数据保存在 Object.我将参数传递给我的行星类的构造函数,用于“大小”“轨道半径”“纹理”“转速”等。我必须为 Moon's of Planets 制作另一个类,它与 moon 类完全相同。
我在想我是否可以在自身内部创建类对象。为自己的对象列表\数组传递一个参数来创建和喜欢地球,我将传递“1”来创建一个月亮,因为月亮将具有相同的构造函数,我将传递“0”来表示没有月亮。创建。
类似的东西
class Planet
{
Model u_sphere;
Texture2D u_texture;
//Other data members
List<Planet> Moons = new List<Planet>();
Planet()
{
//Default Constructor
}
//Overloaded\Custom Constructor
Planet(Model m, Texture2D t, int moon_count)
{
u_sphere = m;
u_texture = t;
while(moon_count > 0)
{
Model moon_sphere = LoadMesh("moon.x");
Texture2D u_texture = LoadTexture("moon.bmp");
Planet temp = new Planet(moon_sphere,moon_texture,0);
Moons.Add(temp);
moon_count--;
}
}
//Others Getters & Setters
}
这怎么可能?
或者什么是此类问题的最佳实践\方法?
p.s 我正在使用 C# 和 Microsoft X.N.A 框架
【问题讨论】:
-
为什么不试试呢?这就像你写的那样工作。 (当然,
while循环可以更简单。)