代码改变世界

C#的函数参数按值传递与按引用传递

2025-01-22 20:34  钟铧若岩  阅读(20)  评论(0)    收藏  举报
using System;

class student
{
    public string name;
    public int age;
}
class Program
{
    static void Main()
    {
       
        student stu = new student();
        stu.name = "wfg";
        stu.age = 43;
        string type = "0";
        int grade = 0;
        
        test1(stu,type,grade);
        
        Console.WriteLine("stu.name="+stu.name);
        Console.WriteLine("grade="+grade);
        
        Console.WriteLine($"stu.name = {stu.name} type = {type} grade = {grade}");
    }
    //结构体是按引用传递
    //字符串,与值类型是按值传递,copy了一份
    static void test1(student stu,string type,int grade)
    {
        stu.name = "lxx";
        stu.age = 10;
        type = "1";
        grade = 1;
    }
}

输出

 

stu.name=lxx
grade=0
stu.name = lxx type = 0 grade = 0