如何实例化新的结构对象?

时间:2010-10-14 19:45:24

标签: c#

这是对的吗?

//Structure
public struct Shape
{
    public string mShape;
    public int mSide;

    public Shape(/*initial sides parameter*/ int sSide, string sShape)
    {
        mShape = sShape;
        mSide = sSide;
    }

}

//more code here.... but no need to post.
//Instantiate new Shape structure object
myShape = new Shape(/*Sides integer value*/ ,sShape);

//How to Add the additional parameter to construct the object?

2 个答案:

答案 0 :(得分:2)

不确定我是否跟进。如果您的问题是,如何在构造函数中发送整数?

你走了:

myShape = new Shape(4, sShape);

或:

int sides = 4;
myShape = new Shape(sides, sShape);

答案 1 :(得分:2)

同意CiC为什么这些领域是公开的?非常危险的违反封装http://en.wikipedia.org/wiki/Encapsulation_%28object-oriented_programming%29 - 也参见有关信息隐藏的参考资料...... 另外,Shape很模糊,对吗?一个正方形有一个值,一个矩形2和一个圆周围......一个多边形可以有很多。我瘦的子类需要通过扩展超类来实现side。而且,在这种情况下,为什么要传递形状的名称?这有什么意义呢?