C#学习笔记 --- 基础补充

news2025/1/18 2:56:15

1.operator   运算符重载:使自定义类可以当做操作数一样进行使用。规则自己定。

        

2.partial 分部类:   同名方法写在不同位置,可以当成一个类使用。

        

3.索引器:使自定义类可以像数组一样通过索引值 访问到对应的数据。

        

4.params  数组参数 (变长参数) 修饰。对应参数放在最后一位。 传参的数组可以是0个或者多个。

        

5.重写

        

1.折叠代码:可以编写注解内容,折叠之后可以看注解内容。

    #region 折叠后可以看到注释
    #endregion

2.二进制十进制转化

        

3.十进制转二进制(10除以2 取余数 在除以2 直到1 再将结果从下到上链接)

        

4.C#命名变量的规范

          不能重名,不能使用关键字,不能使用数字作为开头,不能使用特殊符号下划线除外。

5. 字符串的拼接。通过 +  。 

        通过 stirng.Format("测试{0},{1}",第一个占位符 0 ,第二个占位符 1 ) 
        后续填充的数据数量一定要比字符串里面的占位符多,不然会报错。

6.operator  运算符重载   (有点类似于 lua 元表知识的 表的相加等操作。__Add......)

        一般来说类和结构体不能做操作数去使用。但是通过operator 可以实现需求。

        

        类的静态方法:operator  重载 XX  符号(参数最少有一个类类型)。

        

        允许重载:传的参数的种类,顺序不同。

        

        

        适用于 operator  的运算符:注意实际所需要的参数个数

        算术运算符  +   -  *  /   %     ++   --     

        逻辑运算符  ! 

        位移运算符  &  |   ^    ~   <<   >>     

        条件运算符  >  <    >=   <=   ==    !=     需要成对出现。例如:有 > 就要有 <。

        

  7.operator  运算符重载  小例子。

        

        

8.里氏替换原则

        

        object 万物之基类    引用类型 都用 as 获取数据。值类型都使用括号强转就行。

        

        装箱,拆箱  发生在  object 类型和值类型之间。因为数据在栈.堆中进行了类型的转化。

10.继承里面的构造函数。

        

        

11.sealed 密封类的修饰。不允许再被继承。加强面向对象设计的规范性,结构性,安全性。

        

12.接口。interface

        

        如果接口是 protected  。需要显示实现成员。使用权限命名。

       ​​​​​  ​

        《1》接口小案例:硬盘,u盘 存储设备 读取设备    mp3 读取设备。

        

        

        

13. string  字符串的用法

        

14.stirngbuilder

        

15.结构体 和 类 的区别

        

        

16. 接口 和抽象类

        

        

        

        

17.事件  与 委托

                             

18. 匿名函数  与  lambad  表达式。

        

        

19. 闭包。外层函数有临时变量,内存函数用到了外层函数的变量。会导致 变量的生命周期发生变化。这种行为称为闭包。

        闭包中,内层函数用到的  变量的值取决于调用的时候 。其静止状态是什么数值。

        《1》实例1:当调用委托的时候。int i 早就完成循环了。i 的固定值就是5。所以会打印5。

        

        《2》实例2:使用临时变量存储当前循环的 i 一轮循环结束之后。因为下一轮 的index 和这一轮 的index 是两个不一样的变量。所以 index 就是最终值了。所以存的才是 0 ,1, 2, 3, 4 

        

20. list 的排序。自定义 sort 排序。

        《1》默认对数值类型是可以排序的。默认是升序。

        

        《2》自定义排序。通过实现接口

        

        

        《3》通过委托方法的形式。写法其实和 lua 中的 table.sort(list,fucntion(a,b) { 判断逻辑 }类似。

        <1>第一种方式,全写。

        

        

       <2>使用匿名函数。

        

        <3> 使用 lambad 表达式

        

        <4> 使用 lambad表达式  结合  三目运算符 可以简洁的 达成这个效果。

        

21.逆变 in 和 协变 out :在泛型委托   泛型接口中使用。

       《1.》逆变协变的作用。

                以 协变  out 修饰的泛型,其类型只能用作返回值。

                以 逆变  in  修饰的泛型,其类型只能用作参数。

        《2》逆变协变在泛型委托的作用。

                遵循里氏替换原则:父类声明的变量,可以装载子类。

                父类泛型委托装载子类泛型委托的时候 需要使用 out 协变 进行修饰。

                子类泛型委托装载父类泛型委托的时候需要使用逆变 in 进行修饰。

22. 线程 Thread

        

        

        

23. 预处理器指令。一般不同Unity版本可能执行不同的逻辑。不同的平台会执行不同的逻辑。会用到。

        

        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2278264.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【2024年华为OD机试】 (C卷,100分)- 免单统计(Java JS PythonC/C++)

一、问题描述 题目描述 华为商城举办了一个促销活动&#xff0c;如果某顾客是某一秒内最早时刻下单的顾客&#xff08;可能是多个人&#xff09;&#xff0c;则可以获取免单。 请你编程计算有多少顾客可以获取免单。 输入描述 输入为 n 行数据&#xff0c;每一行表示一位顾…

python中数据可视化库(Matplotlib)

python中数据可视化库&#xff08;Matplotlib&#xff09; 安装 Matplotlib基本使用绘图类型示例散点图 (Scatter Plot)柱状图 (Bar Chart)饼图 (Pie Chart)直方图 (Histogram) 自定义图表样式多面板图表 (Subplots)3D 图表 Matplotlib 是 Python 中一个非常流行的绘图库&#…

某国际大型超市电商销售数据分析和可视化

完整源码项目包获取→点击文章末尾名片&#xff01; 本作品将从人、货、场三个维度&#xff0c;即客户维度、产品维度、区域维度&#xff08;补充时间维度与其他维度&#xff09;对某国际大型超市的销售情况进行数据分析和可视化报告展示&#xff0c;从而为该超市在弄清用户消费…

DETR论文阅读

1. 动机 传统的目标检测任务需要大量的人工先验知识&#xff0c;例如预定义的先验anchor&#xff0c;NMS后处理策略等。这些人工先验知识引入了很多人为因素&#xff0c;且较难处理。如果能够端到端到直接生成目标检测结果&#xff0c;将会使问题变得很优雅。 2. 主要贡献 提…

工业视觉2-相机选型

工业视觉2-相机选型 一、按芯片类型二、按传感器结构特征三、按扫描方式四、按分辨率大小五、按输出信号六、按输出色彩接口类型 这张图片对工业相机的分类方式进行了总结&#xff0c;具体如下&#xff1a; 一、按芯片类型 CCD相机&#xff1a;采用电荷耦合器件&#xff08;CC…

《机器学习》——TF-IDF(关键词提取)

文章目录 TF-IDF简介TF-IDF应用场景TF-IDF模型模型参数主要参数 TF-IDF实例实例步骤导入数据和模块处理数据处理文章开头和分卷处理将各卷内容存储到数据帧jieba分词和去停用词处理 计算 TF-IDF 并找出核心关键词 TF-IDF简介 TF - IDF&#xff08;Term Frequency - Inverse Do…

LabVIEW与WPS文件格式的兼容性

LabVIEW 本身并不原生支持将文件直接保存为 WPS 格式&#xff08;如 WPS 文档或表格&#xff09;。然而&#xff0c;可以通过几种间接的方式实现这一目标&#xff0c;确保您能将 LabVIEW 中的数据或报告转换为 WPS 可兼容的格式。以下是几种常见的解决方案&#xff1a; ​ 导出…

CV 图像处理基础笔记大全(超全版哦~)!!!

一、图像的数字化表示 像素 数字图像由众多像素组成&#xff0c;是图像的基本构成单位。在灰度图像中&#xff0c;一个像素用一个数值表示其亮度&#xff0c;通常 8 位存储&#xff0c;取值范围 0 - 255&#xff0c;0 为纯黑&#xff0c;255 为纯白。例如&#xff0c;一幅简单的…

【JavaScript】比较运算符的运用、定义函数、if(){}...esle{} 语句

比较运算符 !><> < 自定义函数&#xff1a; function 函数名&#xff08;&#xff09;{ } 判断语句&#xff1a; if(判断){ }else if(判断){ 。。。。。。 }else{ } 代码示例&#xff1a; <!DOCTYPE html> <html> <head><meta charset&quo…

centos 7 Mysql服务

将此服务器配置为 MySQL 服务器&#xff0c;创建数据库为 hubeidatabase&#xff0c;将登录的root密码设置为Qwer1234。在库中创建表为 mytable&#xff0c;在表中创建 2 个用户&#xff0c;分别为&#xff08;xiaoming&#xff0c;2010-4-1&#xff0c;女&#xff0c;male&…

【正则表达式】从0开始学习正则表达式

正则表达式&#xff08;英语&#xff1a;Regular Expression&#xff0c;在代码中常简写为regex、regexp或RE&#xff09; 一、推荐学习网站 正则表达式 – 语法 | 菜鸟教程 正则表达式30分钟入门教程 | 菜鸟教程 编程胶囊-打造学习编程的最好系统 二、必知必记 2.1 元字符…

【0x3D】HCI_Remote_Host_Supported_Features_Notification事件详解

目录 一、事件概述 二、事件格式及参数说明 2.1. HCI_Remote_Host_Supported_Features_Notification事件格式 2.2. BD_ADDR 2.3. Remote_Host_Supported_Features 三、事件作用 3.1. 设备特性沟通与理解 3.2. 功能协商与性能优化 3.3. 设备管理与配置更新 四、应用场…

天机学堂笔记1-网关拦截器获取用户信息保存到ThreadLocal

FeignClient(contextId "course", value "course-service") public interface CourseClient {/*** 根据老师id列表获取老师出题数据和讲课数据* param teacherIds 老师id列表* return 老师id和老师对应的出题数和教课数*/GetMapping("/course/infoB…

OpenAI推出首个AI Agent!日常事项自动化处理!

2025 年1月15日&#xff0c;OpenAI 正式宣布推出一项名为Tasks的测试版功能 。 该功能可以根据你的需求内容和时间实现自动化处理。比方说&#xff0c;你可以设置每天早晨 7 点获取天气预报&#xff0c;或定时提醒遛狗等日常事项。 看到这里&#xff0c;有没有一种熟悉的感觉&a…

关于Nvidia显卡在windows系统下存在部分软件屏闪/闪烁问题与解决方法

问题描述 部分软件GUI在使用时一直闪烁/闪屏&#xff0c;包括拖动侧栏与切换子页面时会留下残影。本人遇到发生该现象的桌面应用包括且不限于docker desktop, meta quest link, Vortex, Tabby Terminal等。 本人环境&#xff1a; 操作系统&#xff1a;windows11 显卡&#xf…

vue2配置跨域后请求的是本机

这个我来说明一下&#xff0c;因为我们公司的后端设置解决了跨域问题&#xff0c;所以我有很久没有看相关的内容了&#xff0c;然后昨天请求了需要跨域的接口&#xff0c;请求半天一直不对&#xff0c;浏览器显示的是本机地址&#xff0c;我以为是自己配置错了&#xff0c;后面…

[Qualcomm]Qualcomm MDM9607 SDK代码下载操作说明

登录Qualcomm CreatePoing Qualcomm CreatePointhttps://createpoint.qti.qua

ORB-SLAM2源码学习: Frame.cc: cv::Mat Frame::UnprojectStereo将某个特征点反投影到三维世界坐标系中

前言 这个函数是在跟踪线程中更新上一帧的函数中被调用。 1.函数声明 cv::Mat Frame::UnprojectStereo(const int &i) 2.函数定义 1.获取这个特征点的深度值。 const float z mvDepth[i];深度值由双目或 RGB-D 传感器获取。 在双目情况下&#xff0c;这个深度来自…

基于Piquasso的光量子计算机的模拟与编程

一、引言 在科技飞速发展的当下,量子计算作为前沿领域,正以前所未有的态势蓬勃崛起。它凭借独特的量子力学原理,为解决诸多经典计算难以攻克的复杂问题提供了全新路径。从优化物流配送网络,以实现资源高效调配,到药物分子结构的精准模拟,加速新药研发进程;从金融风险的…

本地部署Web-Check网站检测与分析利器并实现远程访问实时监测

文章目录 前言1.关于Web-Check2.功能特点3.安装Docker4.创建并启动Web-Check容器5.本地访问测试6.公网远程访问本地Web-Check7.内网穿透工具安装8.创建远程连接公网地址9.使用固定公网地址远程访问 前言 本文我们将详细介绍如何在Ubuntu系统上使用Docker部署Web-Check&#xf…