C#-委托delegate

server/2025/3/19 4:41:24/

一.C#-委托delegate

    C#中委托即C++中函数指针,通过delegate关键字可声明一个代理.代理可像指针一样作为参数传递和调用.

    <1.声明一个代理类型

class Test{public delegate string CreateNativeString();
}

   <2.创建代理变量

class Main{public Test.CreateNativeString pointer;
}

   <3.创建目标方法

class Main{public string MyCreateString(){return "MyCreateString"}
}

   <4.目标方法赋值代理变量

class Main{pointer = MyCreateString();
}

   <5.代理变量传参&调用

class Main{public void Invoke(Test.CreateNativeString pointer){pointer();}
}

二.Func&Action

    <1.Func(具有返回值的委托)

         定义了输入和返回的delegate,例如Func<int, string>表示输入为int,输出为string

public class Test
{Func<string, int> fun = CreateString;public int CreateString(int param){}
}

    <2.Action(不具有返回值的委托) 

         定义了输入的delegate,例如Action<int, string>表示输入为int,string

public class Test
{Action<string, int> fun = CreateString;public int CreateString(string str, int param){}
}


http://www.ppmy.cn/server/176148.html

相关文章

JAVA(8)-数组

一.数组&#xff1a;可以存多种数据的容器 二.数组初始化 &#xff08;1&#xff09; 静态初始化 三.数组元素访问 数组名【索引】 把数据存储到数组中 四.数组遍历&#xff1a;取出数据 调用方式&#xff1a;数组名.length 自动快速生成&#xff1a;数组名.fori 五.数…

CVE-2017-5645(使用 docker 搭建)

介绍: 是一个与 Apache Log4j2 相关的安全漏洞,属于远程代码执行,它可能允许攻击者通过构造恶意的日志信息 在目标系统上执行任意代码 Log4j2 介绍 Log4j2 是 Apache 的一个日志记录工具,属于 Java 应用的日志框架,它是 Log4j 的升级版,性能更好,功能更多.它被广泛的适用于 J…

系统可观测性(5)OpenTelemetry基础使用

系统可观测性(5)OpenTelemetry基础概念 Author: Once Day Date: 2025年3月12日 一位热衷于Linux学习和开发的菜鸟&#xff0c;试图谱写一场冒险之旅&#xff0c;也许终点只是一场白日梦… 漫漫长路&#xff0c;有人对你微笑过嘛… 本文档翻译整理自《OpenTelemetry Docs》&a…

《Operating System Concepts》阅读笔记:p309-p330

《Operating System Concepts》学习第 29 天&#xff0c;p309-p330 总结&#xff0c;总计 22 页。 一、技术总结 1.Python 中的并发编程 (1)semaphore class threading.Semaphore(value1)。 (2)condition variable class threading.Condition(lockNone) 书上使用的是 Ja…

C语言之 循环语句:程序运行的核心动力(上)

个人主页&#xff1a;strive-debug 在 C 语言中&#xff0c;分支结构可以通过 if、switch 语句来实现&#xff0c;循环结构则可以通过 for、while、do while 语句来实现。 if 语句 if 语句的语法形式如下&#xff1a; if (表达式)语句; 如果表达式成立&#xff08;为真&am…

【数学建模】层次分析法(AHP)详解及其应用

层次分析法(AHP)详解及其应用 引言 在现实生活和工作中&#xff0c;我们经常面临复杂的决策问题&#xff0c;这些问题通常涉及多个评价准则&#xff0c;且各准则之间可能存在相互影响。如何在这些复杂因素中做出合理的决策&#xff1f;层次分析法(Analytic Hierarchy Process…

如何玩DeepSeek!15分钟快速创建GIS动态数据可视化仪表盘

DeepSeek最近火遍全球&#xff0c;大家用的都用的不亦乐乎。国外呢&#xff1f;当然也是&#xff0c;最近一上YouTube、X等都是deepseek的推送。 今天介绍一下&#xff0c;我在YouTube上看到的GIS行业与DeepSeek结合的一个案例&#xff1a; 快速轻松构建交互式地图仪表盘&…

从零搭建微服务项目Pro(第6-1章——Spring Security+JWT实现用户鉴权访问与token刷新)

前言&#xff1a; 在现代的微服务架构中&#xff0c;用户鉴权和访问控制是非常重要的一部分。Spring Security 是 Spring 生态中用于处理安全性的强大框架&#xff0c;而 JWT&#xff08;JSON Web Token&#xff09;则是一种轻量级的、自包含的令牌机制&#xff0c;广泛用于分…