![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Unity
文章平均质量分 83
阿远的脱发之旅
游戏 / 大前端 / TA / 建模 / Unity / Godot / React / C# / C++ / Rust
展开
-
Unity C# 爆破计划(十五):LINQ 与迭代器
文章目录十五、LINQ 与迭代器LINQ 基础from 与 select 查询where 查询迭代器迭代器的使用Take 与 Skip迭代器方法及早计算与延迟计算十五、LINQ 与迭代器Covers:LINQLINQ 基础我们经常需要从某个数据库(或数据源)查询满足特定条件的内容。这里的数据库或数据源,可以是支持 SQL 的数据库如 MySQL 等,也可以是某个 HTTP 请求地址,最简单的情况下也可以是一个简单的数组。例如:一副扑克牌由 4 个花色、每个花色 13 张牌,外加大小王组成。要打印原创 2021-08-09 23:21:12 · 639 阅读 · 2 评论 -
Unity C# 爆破计划(十四):事件
文章目录十四、事件概念事件定义语法事件参数订阅关系事件源订阅者和事件处理器调用代码事件编写八股事件源的简写事件驱动十四、事件Covers:委托与事件概念事件 在真实世界中无处不在,你可能不知道 C# 中事件的概念,但你一定了解这个词的本义。我们抛开编程不谈,先考察一下“事件”的逻辑性质。你的朋友发来一条信息,约你去打球。关于这一事件,我们能总结出事件 3 个要素:你的朋友是 事件的发起者,这件事是由他引起的,换言之,在事件发生之前,你的朋友就是一个潜在的事件发生器;你是事件的 接收者,这个原创 2021-02-22 22:47:32 · 1085 阅读 · 0 评论 -
Unity C# 爆破计划(十三):委托与 Lambda
文章目录十三、委托和 Lambda委托概念泛型委托Func 和 Action 委托多播并发执行Lambda匿名函数局部函数十三、委托和 LambdaCovers:委托与事件,Lambda 是补充内容我们刚刚学过泛型,委托与泛型有着很多联系,Lambda 又常常与委托配合使用,因此我们先讨论这一块。委托概念现代的通用计算机在架构上属于冯 · 诺依曼机,它是由美籍匈牙利科学家约翰 · 冯 · 诺依曼等人提出的计算机架构。世界上第一台冯氏机,即“原型机”是 1949 年的 EDVAC。冯氏机机要原创 2021-02-22 14:43:12 · 262 阅读 · 0 评论 -
Unity C# 爆破计划(十二):泛型
文章目录十二、泛型概念泛型编程基础十二、泛型Covers:泛型概念考虑在算法一节接触过的“交换变量内容”,我们可以这样写:static void Swap(ref int a, ref int b){ int tmp = a; a = b; b = tmp;}Swap 函数通过引用传参,可以操作调用方传入的变量,将两个整型变量的内容互换。现在问题来了,我们又想写一个函数来交换两个浮点型变量的内容:static void Swap(ref double a, re原创 2021-02-21 21:29:53 · 214 阅读 · 0 评论 -
Unity C# 爆破计划(十一):动态多态
文章目录十一、动态多态认识多态抽象类虚方法接口十一、动态多态Covers:多态(抽象类)、多态(接口)认识多态多态 就是一个行为可以具有多种形式或效果。在生活中你不可能没见过多态性:同一个行为“着装”,穿着校服你表现得就像是在上学,穿着西装你看起来就像是要出席重大场合,穿着睡衣你看起来就像是刚起床 —— 人就是个衣架子(夸你长得好看),总要接受一件“衣服”,但衣服的种类不是固定的,当获得了一件具体的衣服时,“穿衣服”这一行为就产生不同的效果。多态分为 静态多态 和 动态多态,静态多态发生在编译时原创 2021-02-21 20:01:32 · 212 阅读 · 0 评论 -
Unity C# 爆破计划(十):基本算法
文章目录十、基本算法并查集二叉堆与堆排序十、基本算法Covers?基本算法额……这一节不知道要写点什么好,算法这个主题太大了,游戏中要使用的算法也太多了,这部笔记不是算法讲座,姑且写两个比较经典的。并查集并查集就是“并集”和“查集”两个任务,现在假设有一堆集合,我们关注两件事:任取两个元素,如何判断它们是否在同一个集合中如果不处于同一个集合,如何用最优的方式将两个集合合并完成这个算法的关键是“如何表示多个不相交且随时可能合并的集”,这要是直接做一个集合容器,然后不断摧毁、挪动元素还原创 2021-02-21 16:19:15 · 284 阅读 · 0 评论 -
Unity C# 爆破计划(九):命名空间与 using
文章目录九、命名空间与 using命名空间using 关键字九、命名空间与 usingCovers:命名空间命名空间今天你准备写一个处理二维几何图形的程序,你用了 Shape 作为所有图形的基类,这很好;第二天你准备更上一层楼,写一个处理三维几何图形的程序,同时你还想让它跟昨天的成果相兼容。要怎么定义所有三维图形的基类呢?你英语不好,没想到“Geometry”这么高级的词汇,同时又不想用“Shape3d”这么 Low 的词……想来想去你决定还是用 Shape。那么问题来了,两个基类重名了,怎么办原创 2021-02-20 20:08:11 · 368 阅读 · 0 评论 -
Unity C# 爆破计划(八):Console 类
很酷,没有目录八、Console 类本节是补充知识Console 类是静态类,用于实现控制台交互。下面是它提供的一些方法与 C++ 的对比:C# 语法C++ 等效整行打印Console.WriteLine(DATA);打印内容并换行cout << DATA << endl;仅打印Console.Write(DATA);打印内容但不换行cout << DATA;整行读取VAR = Console.ReadLine().原创 2021-02-20 19:32:32 · 266 阅读 · 0 评论 -
Unity C# 爆破计划(七):类与对象
文章目录七、类与对象启蒙属性属性与访问器自动属性继承(基础知识)父类与子类父类的初始化静态成员静态类Console 类七、类与对象Covers:类、属性、静态类型、继承我们正式进入面向对象知识的学习。这节的内容很多,以防你赶时间,先上语言对比:C#C++成员种类字段、属性、方法、索引、事件成员变量、成员函数访问权限5 种(已经介绍过)3 种成员默认权限privateprivate类默认权限internal无此概念多继承不支持简单多继承原创 2021-02-20 19:21:49 · 277 阅读 · 0 评论 -
Unity C# 爆破计划(六):枚举和结构体
文章目录六、枚举和结构体枚举结构体六、枚举和结构体Covers:枚举和结构体枚举枚举是一种有限集合。生活中的有限集合很多,比如“一周中每天的名称”只有 7 种、“生日对应的星座”只有 12 种(现在好像是 13 种了?),这些事物都适合用枚举来描述。写一个枚举的例子:using System;namespace Enums{ enum Weekday { Sun, Mon, Tue, Wed,原创 2021-02-20 11:42:57 · 177 阅读 · 0 评论 -
Unity C# 爆破计划(五):方法与权限
文章目录五、方法与权限访问权限定义方法参数传递可变参数五、方法与权限Covers:方法和函数访问权限尽管还没有正式开始讲 C# 的类,但我们已经写过一个类 class Program 了,并且向其中添加了一个方法 static void Main。C# 中一切都是对象,因此一切函数都是方法;方法就是封装在类或结构中的函数;封装就是把函数和数据打个包(这个包就是类或者结构);而言及封装就涉及到访问权限,因此我们需要先了解 C# 对访问权限的定义。C# 中有 5 种访问权限:private:只原创 2021-02-20 10:22:50 · 251 阅读 · 0 评论 -
Unity C# 爆破计划(四):数组
文章目录四、数组一维数组交错数组多维数组四、数组Covers:数组一维数组C# 也是使用下标运算符 [] 来定义和访问数组的。C# 不区分堆中和栈中数组,也不存在空间释放问题,下面是语言对比:C#C++下标起始同 C++0内存策略无区分,均用 new 关键字,不需要手动释放堆区或栈区,语法不同,堆区需要手动释放数组名的本质引用指针仅声明(C++)、仅定义引用(C#)TYPE[] ARR;TYPE *PTR; 或 TYPE ARR[SIZE]原创 2021-02-19 22:16:58 · 346 阅读 · 4 评论 -
Unity C# 爆破计划(三):流程控制
Covers:条件语句、循环本期的内容非常少,我们都是有编程基础的人,不要浪费生命在重复启蒙上。直接上 C# 与 C++ 的语言对比:流程结构C#C++if-else同 C++if (COND) {} else {},else 与 if 之间要有空格switch-case同 C++整型或枚举,每个 case 都需要 breakwhile、do-while同 C++while (COND) {}、do {} while (COND)循环例外同 C++原创 2021-02-19 19:14:28 · 190 阅读 · 0 评论 -
Unity C# 爆破计划(二):变量与数据
文章目录二、变量与数据变量与常量类型策略简单类型整型浮点型布尔型可空类型引用类型对象类动态类字符串类类型转换强制类型转换ToType 方法Parse 方法自动类型推导运算符算术运算符关系运算符逻辑运算符位运算符赋值运算符其他运算符优先级二、变量与数据Covers:变量与常量、类型与运算符变量与常量懒得废话:C# 对声明和定义不作区分(在 C++ 中定义指发生了内存分配),声明时就发生了定义;允许变量先定义后初始化,用 TYPE VARNAME; 定义变量 VARNAME 但不初始化;等号原创 2021-02-19 19:13:41 · 339 阅读 · 0 评论 -
Unity C# 爆破计划(一):预备 & 基本操作
Unity C# 爆破计划Unity Crash Learning: C# Notes〇、学习清单与科普作者学习 C# 这门语言的目的性非常强:掌握足够应对游戏开发编程的内容,涉及 .NET 框架本身的知识对我们并不重要。学习清单最近看到了 Unity 大学的广告,这是个官方推出的培训实体课,看了一下他们的学习内容,又看了看价格,算了算了,感觉一半是智商税。下面是 Unity 大学广告给出的 C# 部分授课清单:基础阶段:对象与基本操作变量与常量类型与运算符条件语句循环数原创 2021-02-19 19:13:07 · 741 阅读 · 0 评论