public int[] Values
{
set
{
m_Values = value;
}
get
{
return m_Values;
}
}这是什么方法啊?能传参数吗?我现在就是想传参数。还有,能不能实现代码创建这样的方法?

解决方案 »

  1.   

    这个不是方法,只是属性class A
    {
       private int[] m_Values;
       public int[] Values
            {
                set
                {
                    m_Values = value;
                }
                get
                {
                    return m_Values;
                }
            }}在使用的时候:
    A a = new A();
    a.Values = new int[] {1, 2, 3};
    Console.WriteLine(a.Values.Length);
      

  2.   

    这是个属性,特殊的方法,属性可以封装类里边的字段。
    要是要方法的的话可以这样:
    public int[] Values()
    {
     int[] value={0,1,2};
     ....代码
     //给value重新赋值
     return value;
    }
      

  3.   

    中就是C#中的属性啊,你看看C#的基础知识吧,set其实就是对m_Values变量付值,get是取得m_Values变量的值,
    一般C#里面的类,为了保护成员变量,让外界访问成员变量一般都是用属性的形式提供出去。
    比如你这个是在一个类叫ClassTest里面,那么用的时候可以
         ClassTest test = new ClassTest();
        test.Values=..//这里是付值
         int[] aa = test.Values;//这里是获得值
      

  4.   

    这个是属性,get,set都称为方法器,主要就是接收变量的值,以及把变量的值赋出去.
    如果想研究,有一个很好的方法,就是给你赋值的地方打个短点,然后逐行操作,看看他是怎么运行的,很直观
      

  5.   

    C#是不是和java中的get,set是一样的啊?
    我一次能不能给这个属性2个值?
      

  6.   

    今天第二次发一样的了
    有些书里面说这个是特性,class Test{
    private string name;//私有字段
    Test(){}
    Test(string _name)
    {
    name =_name;
    }
    public string Name //实现访问设置name的特性
            { 
                get { return name; } 
                set { name = value; } 
            } 
    public void Print()
    {
    Console.Write(Name);
    }
    }调试:Test a=new Test("a");
    a.Name="b";
    a.print(); 
    //输出为:
    //b
    如果是这样: public string Name //实现访问name的特性,只读,不能设置
            { 
                get { return name; } 
           } 调试: Test a=new Test("a");
    a.Name="b";
    a.print(); 
    //报错别人的电脑没编译器,给你看个思路 
      

  7.   

    public int[] Values(int[] parameter1,string[] parameter2,int[] parameter3)
    {
     int[] value={0,1,2};
     ....代码
     //给value重新赋值
     return value;
    }