zoukankan      html  css  js  c++  java
  • 值传递和引用传递

    // 值类型 int double decimal char bool enum struct

    // 引用类型 string 数组 自定义类 object 集合 接口

    存储上区别:

    值类型:存在栈上

    引用类型:存在堆上

    值传递 例子1 

    1             // 值传递
    2             int n1 = 10;
    3             int n2 = n1;
    4             n2 = 20;
    5             Console.WriteLine(n1);
    6             Console.WriteLine(n2);
    7             Console.ReadKey();

    结果 : n1:10

                 n2:20

    值传递 例子2

    1             int number = 10;
    2             TestTwo(number);
    3             Console.WriteLine(number);
    4             Console.ReadKey();
    5 
    6         public static void TestTwo(int n)
    7         {
    8             n += 10;
    9         }

    值传递 例子3

    1             int number = 10;
    2             TestThree(ref number);
    3             Console.WriteLine(number);
    4             Console.ReadKey();
    5 
    6         public static void TestThree(ref int n)
    7         {
    8             n += 10;
    9         }

    引用类型例1

    1             // 引用传递
    2             Person p1 = new Person();
    3             p1.Name = "张三";
    4             Person p2 = p1;
    5             p2.Name = "李四";
    6             Console.WriteLine(p1.Name);
    7             Console.WriteLine(p2.Name);
    8             Console.ReadKey();

    结果: 李四, 李四

    引用类型例2

     1  class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5             // 引用传递调用方法
     6             Person p = new Person();
     7             p.Name = "张三";
     8             Test(p);
     9             Console.WriteLine(p.Name);
    10             Console.ReadKey();
    11         }
    12 
    13         public static void Test(Person pp)
    14         {
    15             Person p = pp;
    16             p.Name = "李四";
    17         }
    18     }

    结果:李四

    引用类型例3 特别string

    1             string s1 = "张三";
    2             string s2 = s1;
    3             s2 = "李四";
    4             Console.WriteLine(s1);
    5             Console.WriteLine(s2);
    6             Console.ReadKey();

    结果:s1: 张三 s2:李四

  • 相关阅读:
    yaf(3) 正则路由
    yaf(1) 配置文件
    PHP 分页URL设计
    smarty模版目录疑问
    yaf(5) smarty
    yaf(2) layout 自定义目录结构
    php 倒计时出现0的情况
    PHP 单一入口框架设计简析
    利用jquery.load()实现html框架效果
    yaf(4) Yaf_Loader()
  • 原文地址:https://www.cnblogs.com/luozihua/p/9980205.html
Copyright © 2011-2022 走看看