zoukankan      html  css  js  c++  java
  • 构造函数(构造器)的正确重载方式------类

    在类的构造函数重载中,一般都是这么写的。

     public  class A
        {
            int i = 12;
            int ii;
            string str = "h";
            string strr;
    
            public A()
            {
                i=12;
                str="h";
            }
    
            public A(int x)
            {
                i=x;
            }
    
        }

    但是生成出来的并不是这样子的,生成出来的是这样的:

     public  class A
        {
            int i = 12;
            int ii;
            string str = "h";
            string strr;
    
            public A()
            {
                //以下注释的内容是编译器生成的操作:
                //i = 0;
                //ii = 0;
                //str=null;
                //strr = null;
                //调用基类(object类)的构造函数
                i=12;
                str="h";
            }
    
            public A(int x)
            {
                //以下注释的内容是编译器生成的操作:
                //i = 0;
                //ii = 0;
                //str=null;
                //strr = null;
                //调用基类(object类)的构造函数
                i=x;
            }
        }

         这会造成代码的膨胀。。。解决方案是下面的这段代码

    public  class A
        {
            int i = 12;
            int ii;
            string str = "h";
            string strr;
    
            public A()
            {
                i=12;
                str="h";
            }
    
            public A(int x):this()//按照此方法重载
            {
                i=x;
            }
        }
  • 相关阅读:
    css3 省略号
    js一些常用方法
    nth-child使用
    常见表单元素处理
    表单的基本使用
    web基本概念
    PHP数组
    PHP函数
    PHP错误处理
    PHP文件载入
  • 原文地址:https://www.cnblogs.com/xiaoleye/p/4766643.html
Copyright © 2011-2022 走看看