
c#语法
「已注销」
让世界因为我有一点点不一样。
展开
-
向量(unity3d)
向量Vector3namespace 向量{ struct Vector3 { public float x { get; set; } public float y { get; set; } public float z{ get; set; } public Vector3(float x, float y, float z) { this.x = x;原创 2021-11-15 12:41:37 · 3130 阅读 · 0 评论 -
摄像机的安全检测
摄像机安全检测安全监测的方式有很多种2.当摄像机发射线可以碰到玩家时,且摄像机当前不在初始位置如果上一个位置能看到家,则后退一步如果看不到玩家,不动public class cameraSafe : MonoBehaviour{ //在相机下定义一个空节点作为初始位置 public Transform StartPos; //在相机下定义一个空节点作为结束位置 public Transform EndPos; //插值的第三个参数 publi原创 2021-11-15 12:40:27 · 5319 阅读 · 0 评论 -
人物的移动和镜头(unity)
人物的移动 //移动的速度public float speed;//旋转的速度public float xInstensity;1.人物前后左右的移动//人物移动 void Move() { float horizontal = Input.GetAxis("Horizontal"); float vertical = Input.GetAxis("Vertical"); if (horizontal != 0 || verti原创 2021-11-15 12:35:34 · 3118 阅读 · 0 评论 -
接口(c#)
接口接口的定义与实现隐式实现,显示实现的区别哪些东西可以被继承接口中有哪些成员namespace 接口{ class Program { static void Main(string[] args) { } } class Bird { } class Transport { } class Mahjong : Bird { }原创 2021-11-13 09:55:53 · 171 阅读 · 0 评论 -
属性和字段的区别
属性和字段的区别属性可以保证安全,在类外使用时,只能使用属性名,避免使用字段名属性的get和set可以限制字段的一些功能属性没有存储数据的功能字段又称为成员变量,一般在类内进行交互,保存具有的数据...原创 2021-11-13 09:53:36 · 630 阅读 · 0 评论 -
数组、流程控制语句
数组一维数组和二维数组的定义的三种方式迭代器的遍历 foreach //数组 //将相同的数据类型的数据形成一个有序的集合称为数组 //1、数组是一段连续的内存空间 //2、数组的长度在声明时就必须给定,且长度不可变 //第一种定义 int[] arr1 = { 1, 2, 3, 4, 5, 6 }; //第二种定义,没有给定数组中元素值,会默认值原创 2021-11-13 09:52:32 · 283 阅读 · 0 评论 -
枚举(c#)
枚举 class Program { //枚举类型:用来列出一种类型可能出现的所有选项 //枚举类型的名字就是一个数据类型 //枚举类型具有自解释性 //枚举类型具有一定的限制性 //枚举类型默认的类型是int. //枚举类型可以设定数据类型,并且设定的类型只能是整数类型,枚举类型的字节数跟设定的类型的字节数保持一致 //枚举类型具有自增性 //枚举类型默认值为0,原创 2021-11-13 09:23:40 · 219 阅读 · 0 评论 -
泛型(c#)
泛型泛型的写法泛型的作用泛型的约束new关键字约束的书写顺序约束的冲突namespace 数据结构{ class Program { static void Main(string[] args) { int num1 = 10; int num2 = 20; Swap<int>(num1, num2); // Console.Wri原创 2021-11-11 09:48:33 · 88 阅读 · 0 评论 -
面向对象的三大特性
面向对象的三大特性1.封装性将具有相同特征的一类事物高度概括扩出来使用不同的访问权限修饰符,将类中的成员进行分配,达到更安全的效果访问权限修饰符:如果没有在变量或者函数定义时写明是什么时候访问,那么默认是private权限public 公有的,修饰的成员变量可以在任意其他地方进行访问,不受任何访问限制private 私有的,修饰的成员只能在自己类内部访问,无法在外部调用protected 受保护类型internal 程序集公有类型2.继承 (:)将父类所有成员给到子类,提高代码的原创 2021-11-10 21:12:09 · 89 阅读 · 0 评论 -
static和const
static1.staticstatic:在类中,使用static修饰的成员称为静态成员,静态成员属于类本身不属于某个对象1、修饰成员,成员属于类而不属于对象2、修饰构造函数,声明静态构造函数,用于给静态成员赋值3、修饰类,将类变成静态类,静态类中允许存在静态成员static关键字修饰的成员,具有唯一性静态方法中只能够使用静态成 静态类无法被实例化创建对象2.const和static的区别const本质上来说也是一个静态的成员,但const修饰的变量在初始化后不能再发生变化原创 2021-11-10 19:08:19 · 457 阅读 · 0 评论 -
索引器(c#)
索引器索引器的定义属性与索引器的区别索引器是否存在下标越界问题?索引器的参数个数是否有要求?索引器的参数类型是否有要求?namespace 索引器{ class Program { static void Main(string[] args) { //索引器:让一个类的对象,能够像数组一样进行访问的做法称为索引器 Map map = new Map(); //map.原创 2021-11-10 17:48:32 · 190 阅读 · 0 评论 -
单例模式(c#)
单例模式保证一个类只有一个实例对象,(可以不满足)且无法在后续继续生成实例对象。懒汉模式饿汉模式 class Singleton { #region 懒汉模式 //单例类唯一的对象 //static静态,保障单例类对象的唯一性 private static Singleton _instance = null; //确保这个类的对象不能在其他类中实例出对象 private Singlet原创 2021-11-10 16:57:35 · 888 阅读 · 0 评论 -
抽象函数和虚函数的区别
抽象函数和虚函数的区别1.抽象方法是只有方法名称,没有方法体,即没有方法的具体实现,子类必须重写父类抽象方法才能实现具体功能;虚函数有方法名称也有方法体,但是子类可以覆盖,也可不覆盖。2.抽象方法是一种强制派生类覆盖的方法,否则派生类将不能被实例化。3.抽象方法只能在抽象类中声明,虚方法不是。4.派生类必须重写抽象类中的抽象方法,虚方法则不必要。...原创 2021-11-10 16:52:45 · 1841 阅读 · 0 评论 -
大数相加(c#)
大数相加stringBuild :String 对象是不可改变的。每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用 System.Text.StringBuilder 类。例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能。原创 2021-11-10 16:22:47 · 431 阅读 · 0 评论 -
抽象类(c#)
抽象类是什么?用abstract关键字修饰的类,称为抽象抽象类中可以有抽象的行为(抽象函数)干什么?代码的侵入性特点1、抽象类用来强制要求派生类中必须实现抽象类中的抽象成员2、抽象类最合适用来当基类3、抽象类没有具体实例4、子类如果实现父类的抽象方法,则需要使用override关键字修饰抽象类和接口的区别:1、可以包含的成员不同,接口只能包含:函数的声明,属性声明,索引器声明,事件声明但是抽象类,除了可以包含接口中所有成员外,可以包含正常类的可以有的所有东西2、接口原创 2021-11-10 15:28:35 · 394 阅读 · 0 评论 -
get和set属性访问器(c#)
get和set访问器get和set访问器实际上是在编译的过程中将自己转化为一个函数set访问器中的value是set访问器在编译过程中变成的函数的参数如果只有get访问器,称这个属性是只读属性,相反如果只有set访问器成这个属性为只写属性数据只会存储在变量中属性是不存任何数据类型的(alt + shift) public int Age { //get访问器: 获取变量 get {原创 2021-11-10 15:24:32 · 2018 阅读 · 0 评论 -
单向链表(c#)
链表IMyLink先定义一个接口,主要包含规定相关的增删改查的方法、索引器,count属性访问器namespace 链表{ interface IMyLink<T> { //接口的作用 //1、为后面要写的内容提供一个强制的模板,规范代码 //2、作为一个提纲的作用,为后面要写的内容提供思路 //3、提高写代码的效率 //增 void Add(T t);原创 2021-11-10 14:58:37 · 632 阅读 · 0 评论 -
c#List容器的封装(数组封装)
list容器list容器和数组的区别数组1、数组的长度固定,存满后不能再添加新的元素2、数组无法得知当前已经存了几个元素,还剩多少空间3、数组是一段连续的存储空间,确定后无法修改地址list容器1、长度不固定,可以无限制添加新的元素2、list容器可以得知当前已经存了多少个元素3、list可以是不连续的存储空间IMListnamespace List容器{ interface IMyList<T> { //接口的作用 /原创 2021-11-10 11:19:15 · 1795 阅读 · 0 评论 -
数据类型及转换(c#)
数据类型8个整型 + 3浮点型 11个值类型bool类型只能是true 或 false判断条件只能用true或false条件判断sizeof()` 获取数据类型长度 //根据byte类型,在内存中开辟一段1个字节的内存空间,将这段空间命名为byteValue,并 将2转换为2进制数据,对这段内存空间进行填充 //byte:一个字节, 无符号(取值从零开始,不能是负数) 0-255 byte byteValue = 2;原创 2021-11-08 22:25:28 · 958 阅读 · 0 评论