首页 > 编程语言 >[转][C#]泛型 T

[转][C#]泛型 T

时间:2023-09-05 23:45:01浏览次数:28  
标签:C# void 约束 new 泛型 AX where

泛型效率 约等于 直接使用类型,比装箱、拆箱 更有效率。

T AX<T>() where T : new() // 无参数构造函数约束
{
    T tNew = new T();
    return tNew;
}

void AX<T>() where T : IAsyncResult // 接口约束
{

}
        
void AX<T>() where T : class // 引用约束
{

}

void AX<T>() where T : struct // 值约束
{

}

 T 可以换成其它字母,可以同时申明多个泛型

void AX<T>() where T : IAsyncResult // 接口约束
{
    
}

void AX<T,T2,T3,T4>()
    where T : class  // 引用约束
    where T2 : struct // 值约束
    where T3 : new() // 无参数构造函数约束
{
    T t = null;
    T2 t2 = default(T2);
    T3 t3 = new T3();
}

 

标签:C#,void,约束,new,泛型,AX,where
From: https://www.cnblogs.com/z5337/p/17681178.html

相关文章

  • 【CSS】CSS笔记
    CSS笔记CSS就是美化网页的。CSS是层叠样式表(CascadingStyleSheets)的简称。有时也称为CSS样式表或级联样式表。也是一种标记语言。CSS简介选择器+声明h1{color:red;...}选择器{属性:值}CSS代码风格样式格式书写:展开格式,一个样式写一行。样式大小写:小写......
  • Windows驱动程序是支持多线程【chatgpt】
    是的,Windows驱动程序是支持多线程的。驱动程序是运行在操作系统内核空间的软件模块,可以通过创建和管理多个线程来实现并发处理的能力。通过多线程,驱动程序可以同时处理多个请求或事件,提高系统的响应性能和并发处理能力。在Windows驱动程序的开发中,可以使用内核模式线程来执行异步......
  • 聊聊CMake和Makefile,并谢谢ChatGPT
    缘起和一个在公司里上班的姐姐聊天,她讲到自己配CMake环境有点崩溃,因为之前没有接触过这些。而我想起来第一次接触是在Games101的交流群里,看到有人问CMake的问题&求教程。后来暑假电赛训练的时候看队友提到过CMake,前几天也交流了一些CMake相关的东西。CMake的频繁出现让我决定......
  • 用navicat工具excel导入数据到Oracle数据库,数字类型的总是多加.0的问题怎么处理
    在使用Navicat工具将Excel数据导入Oracle数据库时,数字类型的总是多加一个.0的问题可能与数据类型映射有关。您可以尝试以下解决方法:检查Excel列的数据格式:确保Excel列中的数据是按照数字格式存储,而不是文本或其他格式。如果列的单元格格式为文本,则导入时Oracle可能将......
  • 开发软技能——Git Commit规范
    提交代码是程序员们每天的工作日常,今天敬姐给大家分享一个好的编程习惯,就是关于GitCommit规范。效果预览<type>(<scope>):<subject><BLANKLINE><body><BLANKLINE><footer>提交之后的效果如下:GitCommit语法type:必填commit类型,有业内常用的字段,也可以根据需要......
  • Proj CDeepFuzz Paper Reading: Invariance-inducing regularization using worst-cas
    Abstract本文:Task:1.proveinvariance-inducingregularizerscanincreasepredictiveaccuracyforworst-casespatialtransformations2.provethatonadversarialexamplesfromtransformationgroupsintheinfinitedatalimitrobusttrainingcanalsoimpro......
  • ES6前端技术之第二讲 let和const命令
    第二讲let和const命令前人栽树后人乘凉,前人挖坑后人遭殃!!!JS是弱类型语言,当初设计者为了使用的便捷,开发人员开心,留下了不少坑。请看JS系列坑之技术细节:var关键字挖的坑1.可以重复声明变量vara=88;vara="张老师";console.log(a);填坑:ES,let关键字......
  • Drupal XSS漏洞(CVE-2019-6341)
    目录漏洞复现复现环境:Vulhub环境启动后,访问http://192.168.80.141:8080/将会看到drupal的安装页面,一路默认配置下一步安装。因为没有mysql环境,所以安装的时候可以选择sqlite数据库漏洞复现该漏洞需要利用drupal文件模块上传文件的漏洞,伪造一个图片文件,上传,文件的内容实际......
  • GCC编译器
    (1)预处理(preprocessing)、编译(compilation)、汇编(assembly)和链接(linking) gcc-E-ohello.ihello.c //预处理(preprocessing) gcc-S-ohello.shello.i //编译(compilation) gcc-c-ohello.ohello.s //汇编(assembly) gcc-ohellohello.o //链接(link......
  • switch文件格式转换
    1.链接https://github.com/dezem/SAK/releaseshttps://github.com/dezem/SAK2.NSZ===>NSP格式2.1prod.keys替换复制yuzu的prod.keys覆盖工具的prod.keys2.2运行工具......