C# 方法的传参

引用传参

csharp 复制代码
using System;


public class Program
{
	public static void Main()
	{
		Tools t = new Tools();
		t.bf();
		double a = 10;
		double b = 20;
		t.change(ref a, ref b);
		Console.WriteLine(b);
	}
}

class Tools {
	public void af() {Console.Write("a\n");}
	internal void bf() {Console.Write("b\n");}
	public void change(ref double a, ref double b) {
		dynamic t;
		t = a;
		a = b;
		b = t;
	}
	
}

调用方法时,你必须使用 ref 关键字:

csharp 复制代码
t.change(ref a, ref b);

输出传参

csharp 复制代码
using System;

namespace LHJ {

    class TODO {
        static void Main() {
            Tools t = new Tools();

            int a, b;
            Console.WriteLine("add = {0}, doublea = {1}, double b = {2}",
                t.foo(2, 3, out a, out b), a, b);

        }
    }

    class Tools {
        public int foo(int x, int y, out int a, out int b) {
            a = x * 2;
            b = y * 2;
            return x + y;
        }
    }

}
csharp 复制代码
public int foo(int x, int y, out int a, out int b)

此方法返回一个intfoo,和两个out int

注意调用时要带out

csharp 复制代码
t.foo(2, 3, out a, out b)
相关推荐
小赵面校招2 分钟前
Spring Boot整合MyBatis全攻略:原理剖析与最佳实践
java·spring boot·mybatis
曼岛_5 分钟前
[Java实战]Spring Boot 3 整合 Ehcache 3(十九)
java·spring boot·spring
意倾城7 分钟前
Spring Boot 配置文件敏感信息加密:Jasypt 实战
java·spring boot·后端
曼岛_7 分钟前
[Java实战]Spring Boot 3 整合 Apache Shiro(二十一)
java·spring boot·apache
火皇4057 分钟前
Spring Boot 使用 OSHI 实现系统运行状态监控接口
java·spring boot·后端
带刺的坐椅10 分钟前
Java Solon v3.3.0 发布(国产优秀应用开发基座)
java·spring·solon
不再幻想,脚踏实地10 分钟前
Spring Boot配置文件
java·数据库·spring boot
pedestrian_h18 分钟前
Spring AI 开发本地deepseek对话快速上手笔记
java·spring boot·笔记·llm·ollama·deepseek
诚丞成18 分钟前
BFS算法篇——从晨曦到星辰,BFS算法在多源最短路径问题中的诗意航行(上)
java·算法·宽度优先
rylshe131426 分钟前
在scala中sparkSQL连接mysql并添加新数据
开发语言·mysql·scala