永发信息网

C# 出现非静态的字段方法属性要求对象引用

答案:2  悬赏:40  手机版
解决时间 2021-02-27 15:46
比如这种情况的,
namespace A
{
public class B
{
public struct C
{
public String D1;
public String D2;
public String D3;
public String D4;
}
private void E(String F)
{
C.D1 = F
}
}
}
这个C.D1应该怎么引用啊,我试过实例对象的参数也不行呢。。。
最佳答案
你只是在 class B 中嵌套声明了 struct C!并没有定义 struct C类型的变量!
public class B
 {
    public struct C
    {            
                public String D1;
                public String D2;
                public String D3;
                public String D4;
     }

    //定义变量
    C mc;   

    private void E(String F)
    {
               mc = new C( );  
                mc.D1 = F
     }
} 更完备的版本如下:
p
public class B 
{    
    public struct C    
    {                            
        public String D1;                
        public String D2;                
        public String D3;                
        public String D4;     
   }        
   //定义变量    
   private C mc;              

   //构造函数 
   public B()
   {
      this.mc = new C();
   }     

   public  void E(String F)    
   {             
     this.mc.D1 = F     
   }
}
全部回答
在使用类(class)的非静态字段、属性和方法前,必须先实例化对象,然后通过实例操作非静态字段、属性和方法。 因为被实例化对象是一个引用类型的变量,因此“非静态的字段 方法或属性要求对象引用”。 例如 // 定义一个类testclass class testclass {     // 非静态字段     public int x;     // 非静态属性     public string name{get;set;}     // 非静态方法     public int add(int a, int b)     {         return a + b;     } } // 要使用testclass非静态成员,必须先实例化testclass // 注意:变量 tc 引用类型的 // 如果不实例化testclass,调用非静态成员时就会出错! testclass tc = new testclass(); tc.x = 100; tc.name = "li shi"; int r = tc.add(10, 10);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
大家好,我是个新手也是车主,买了一台东风曰
聚源宾馆在什么地方啊,我要过去处理事情
宇宙中到底有多少个星球
调查过程中由于调查者或被调查者的人为因素所
朱碌科中心卫生院这个地址在什么地方,我要处
nba十月十一日有哪几场球
电表怎么看? 10月1号160,到10月30号170.请问
常熟好玩的地方???
铁道家园在哪里啊,我有事要去这个地方
应用内河航运水工建筑工程定额时,编制概算时
为什么我坚决反对“积木式创新”
法国电影发展
靓点灯饰怎么去啊,有知道地址的么
睡前做瑜伽好吗
face和map这两个英文单词中的a是否相同
推荐资讯
请问唐顿庄园只有第二季有圣诞特辑么?第一季
韩国的武术是什么?
独生子女证的奖励费
龙凤新城B区地址有知道的么?有点事想过去
请问澳洲杉生产产地在哪里?地点越详细越好.
已知两条直角边的和等于10cm,求这个直角三角
【雪花图案】雪花的图案是怎么形成的?、
高考补录是什么意思 10分
华为p8高配版数据线有几种
拥有“东方的莎士比亚之称”的我国著名作家是
如何选中下拉框中指定的数据
文笔地址在什么地方,想过去办事
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?