zoukankan      html  css  js  c++  java
  • 第二章 深入C#数据类型

      

     
     
     
              巧记:值(无ref)+值=不变
                 值(无ref)+引=变
                    引(有ref)+值/引=变
     
     

    1.值类型和引用类型

      1.引用类型

      源于system.object家族。

        (1)类

        (2)接口:interface

        (3)数组

        (4)字符串:string 

      :

      2.值类型

      源于system.valueType家族

      值类型数据所在的内存区域为栈。

      3.值类型:

        (1)基本数据类型{int,long,double,byte~~~~}

        (2)枚举:enum

        (3)结构体:struct

    2.结构体

      1.定义:

      访问修饰符  struct   结构名

      {

                //结构体

      }

      (1)结构体可以有字段,方法,字段不能赋初始值。

      (2)可以不new,但有条件,结构体中有成员变量和成员方法,成员变量没有赋值,调用成员方法,不new会报错,所以一般先new。

      例如:

    复制代码
    public struct Student
    
    {
    
      public int num;
    
      public void  show()
    
      {
    
      }
    
    }
    复制代码

      

    复制代码
    static void Main(string[] args)
    
      {
    
          Student stu;
    
          stu.num;
    
           stu.show();  
    
      }
    
      //没有给成员变量赋值,报错
    复制代码

      

    复制代码
    static void Main(string[] args)
      {
    
          Student stu;
    
          stu.num=10;
    
           stu.show();  
    
      }
    
      //给成员变量赋值,不报错
    复制代码

      

    复制代码
    static void Main(string[] args)
      {
    
          Student stu=new Student();
    
          stu.num;
    
           stu.show(); 
    
      } 
    
       //new出来,不报错
    复制代码

    3.装箱和拆箱 

      提示:尽量减少装箱和拆箱,因为他们会消耗程序的性能。

  • 相关阅读:
    DNS欺骗&嗅探监听
    linux下的ARP攻击(kali)
    隐匿攻击
    跨边界传输之反弹shell
    跨边界传输之内网代理
    跨边界传输之端口转发
    权限维持
    内网提权-服务篇
    内网提权-系统篇
    Laxcus大数据管理系统2.0(14)- 后记
  • 原文地址:https://www.cnblogs.com/wang2386033566/p/8159238.html
Copyright © 2011-2022 走看看