
编程之美
文章平均质量分 75
euphorias
这个作者很懒,什么都没留下…
展开
-
Unity 项目编译成功,但是VS 找不到命名空间解决办法
文章目录问题描述问题产生的原因解决办法问题描述Unity 项目编译成功,但是VS 找不动命名空间,unity 情况,没有任何报错VS情况,多行代码无法找到命名空间虽然依然可以在VS里面写,然后在unity里正确编译,但是无法进行VS的Debug,因为VS存在错误,无法编译成功,无法附加到Unity问题产生的原因问题产生的原因是vs的解决方案对unity的项目引用出错,需要重新生成解决方案解决办法重新生成: 关闭Vs,关闭unity,打开项目所在地,删除除了Assets ,Packa原创 2021-10-25 15:20:48 · 7937 阅读 · 4 评论 -
接口interface
在C#和Java中都有接口的存在,这里总结一下接口的使用1.首先接口可以作为模板,是实现多继承的根本,在设计模式中,接口定义功能,不同的对象需要不同的功能时候可以继承不同的接口。举例子:internal interface Ieat//功能,吃{ float EatTime { get; set; } float EatNumber { get; set; } void Sto原创 2021-03-29 17:14:26 · 172 阅读 · 0 评论 -
C# 高级概念总结
对C#高级概念进行一些汇总,不断更新,欢迎讨论,指出错误。文章目录索引器迭代器IEnumerator 和 IEnumerable特性属性装箱拆箱,公共语言运行库(CLR),IL/MSIL 中间语言,托管与非托管资源,C# 内存管理多线程,网络编程,反射,元数据,动态编程,元组数据库与LINQ,C#源码刨析索引器数组的下标索引也是实现的索引器(C#的数组并不等同于C++的数组,C#的数组是进行了封装的(Array类),C#的指针数组在不安全的代码中,可否直接拿到数组大小是区分是否是封装的数组的依据之一,原创 2021-02-28 21:35:10 · 709 阅读 · 0 评论 -
Xlua热更新使用方法 (一)
文章目录热更新介绍Xlua开发工具推荐C#调用lualua文件加载Loader自定义加载lua调用C#的例子热更新介绍目前来说主流的热更新方案还是lua,其中ulua,ToLua,Xlua,这三个是比较热门的。Tolua继承自uluahttp://www.ulua.org/index.html点开Xluahttps://github.com/Tencent/xLuaxlua学习,首先看一遍文档中必看的教程和配置文件C#访问LuaLua访问C#注意:xlua只一定程度上支持重载原创 2021-01-01 20:14:08 · 1461 阅读 · 0 评论 -
热更新预备-Lua核心知识总结
文章目录环境搭建HelloWorldLua数据类型Lua变量Lua循环**Break:退出循环(当前层)****Continue:执行下次循环****return:退出所有循环**Lua repeat...until 循环Lua流程控制Lua函数lua运算符lua迭代Lua数组和表**数组和表的使用****表的方法****表的增删改查**提到热更新,那么首当其冲的就是Lua,这里总结一下Lua常用的知识点,后面对Xlua进行探索再进行补充。此篇是针对热更新而总结的Lua所以会将Lua与C#进行一番对比,日原创 2020-12-14 22:27:52 · 317 阅读 · 0 评论 -
C#关于递归
文章目录输出是多少?分析过程递归的结论:挂起逐语句测试输出是多少?考虑这样一段代码传入参数1,输出会是什么?1233?然而实际上是123321。这说明,当1进入递归时,前一个函数并没有结束,而是挂起先执行Test(2),2进入递归,挂起执行Test(3),跳过递归语句,输出Console2:3,然后执行最后挂起的Test(2)后面的语句,Console2:2,执行挂起的Test(1),Console2:1.分析过程再看这一段语句来分析一下执行过程:参数1进入,输出Console1:1原创 2020-11-22 13:42:49 · 922 阅读 · 0 评论 -
C#高级教程-委托和事件
文章目录委托是什么:声明委托:使用委托:系统提供的委托:多播委托:多播委托的遍历:匿名方法:Lambda表达式:委托函数 :值传递与引用传递事件:委托是什么:委托是一个类型,这个类型可以赋值一个方法的引用。定义一个委托,相当于定义一个类声明委托:定义一个委托要定义方法的参数和返回值,使用关键字delegate定义。delegate void IntMethodInvoker(int x); 有参数无返回值delegate double TwoLongOp(long first,lon原创 2020-08-23 22:33:00 · 482 阅读 · 0 评论 -
C#高级教程-字符串与正则表达式
文章目录字符串方法1,创建字符串其他方法正则表达式正则表达式是什么:常用的操作正则表达式的方法和委托:1,静态方法IsMatch关于参数RegexOptions静态方法Replaces函数(System.Text.RegularExpressions)Split拆分文本@符号定位元字符基本语法元字符反义字符重复描述字符择一匹配对正则表达式分组()字符串方法1,创建字符串System.String(string是这个类的别名)System.Text.StringBuilderSystem.Stri原创 2020-08-19 21:18:37 · 1333 阅读 · 0 评论 -
C#中级教程-C#命名空间
命名空间的设计目的是提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。定义命名空间namespace namespace_name{// 代码声明}using 关键字using 关键字表明程序使用的是给定命名空间中的名称。例如,我们在程序中使用 System 命名空间,其中定义了类 Console。我们可以只写:Console.WriteLine (“Hello there”);我们可以写完全限定名称,如下:Syste原创 2020-06-18 17:30:45 · 254 阅读 · 0 评论 -
C#中级教程-异常处理
文章目录语法C# 中的异常类自定义异常(抛出异常:throw)注意事项try:一个 try 块标识了一个将被激活的特定的异常的代码块。后跟一个或多个 catch 块。catch:程序通过异常处理程序捕获异常。catch 关键字表示异常的捕获。finally:finally 块用于执行给定的语句,不管异常是否被抛出都会执行。例如,如果您打开一个文件,不管是否出现异常文件都要被关闭。throw...原创 2020-04-23 18:58:11 · 324 阅读 · 0 评论 -
C#中级教程-泛型
文章目录泛型的使用泛型类泛型方法泛型通过参数化类型来实现在同一份代码上操作多种数据类型。利用“参数化类型”将类型抽象化,从而实现灵活的复用。泛型的使用泛型类定义一个泛型类就是指的是,定义一个类,这个类中某些字段的类型是不确定的,这些类型可以在类构造的时候确定下来,举例:创建一个类处理int类型和double类型的相加class ClassA{private T a;private...原创 2020-03-17 15:12:18 · 161 阅读 · 0 评论 -
C#中级教程-列表List
文章目录列表与数组的区别以及列表的优势列表List的创建和使用列表的容量管理列表的遍历列表的操作方法列表与数组的区别以及列表的优势当我们有很多类型一样的数据的时候,初级教程中我们一般使用数组来进行管理,但是这样有个缺点就是数组的大小是固定的。如果我们很多类型一样的数据,比如游戏得分,我们可以集合类来进行管理,比如列表List,我们可以使用列表List很方便的添加数据,删除数据还有其他对数据的操...原创 2020-03-17 15:11:08 · 214 阅读 · 0 评论 -
C#中级教程-多态
文章目录静态多态性函数重载运算符重载动态多态性多态是同一个行为具有多个不同表现形式或形态的能力。多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能"。多态性可以是静态的或动态的。在静态多态性中,函数的响应是在编译时发生的。在动态多态性中,函数的响应是在运行时发生的。在 C# 中,每个类型都是多态的,因为包括用户定义类型在内的所有类型都继承自 Object。...原创 2020-03-17 15:09:44 · 179 阅读 · 0 评论 -
C#中级教程-继承
文章目录实现继承:接口继承:多重继承:(接口)和继承有关的方法虚方法隐藏方法和继承有关的类抽象类密封类和密封方法派生类的构造函数修饰符接口实现继承:表示一个类型派生于一个基类型,它拥有该基类型的所有成员字段和函数。在实现继承中,派生类型采用基类型的每个函数的实现代码,除非在派生类型的定义中指定重写某个函数的实现代码。在需要给现有的类型添加功能,或许多相关的类型共享一组重要的公共功能时,这种...原创 2020-03-17 14:54:50 · 177 阅读 · 0 评论 -
C#中级教程-封装
文章目录语句封装:函数封装:将方法(语句)打包放在一个类里,就称为封装,封装后的函数或者类可以重复使用,提高效率。语句封装:举例(未封装):class Customer{public string name;public string address;public string buyTime;public void Show(){Console.WriteLine(name);...原创 2020-03-17 14:47:29 · 282 阅读 · 0 评论 -
C#中级教程-属性
我们习惯上把字段设置为私有的,这样外界不能修改字段的值,然后我们可以通过定义属性来设置和取得字段中的值。这就是属性存在的意义,为外界读取和改变数值提供一个接口private int age;public int Age{//习惯上属性大写 字段小写set{if(value<0)return;age = value;}get{return age;}}属性主要是为字段服...原创 2020-03-17 14:46:11 · 196 阅读 · 0 评论 -
C#中级教程-类和对象
文章目录类类分为两部分从字段来说,主要知识点从函数来说,主要知识点对象类类实际上是创建对象的模板,每个对象都包含数据,并提供了处理和访问数据的方法。类定义了类的每个对象(称为实例)可以包含什么数据和功能。类中的数据和函数称为类的成员数据成员:数据成员是包含类的数据–字段,常量和事件的成员。函数成员:提供了操作类中数据的某些功能。(方法,属性,构造方法和终结器(析构方法),运算符,和索引...原创 2020-03-17 14:44:53 · 190 阅读 · 0 评论 -
C#初级教程-函数
函数的定义和使用定义函数static void Write(){Console.WriteLine(“Text output from function .”);}函数的使用static void Main(){Write();}控制台应用程序函数的定义形式如下:static (){…return ;}参数数组定义一个函数,用来取得数字的和,但是数字的个数不确定。...原创 2020-02-24 15:28:33 · 671 阅读 · 0 评论 -
C#初级教程-C#变量类型
类型转换隐式转换编译器自动识别 , 不需要我们写更多的代码显示转换short j = (short)i需要我们告诉编译器,什么类型转换成什么类型使用Convert命令进行显示转换强制类型转换:private string a="";private float b;private void Start(){ a = b.ToString();//转字符串 b ...原创 2020-02-24 15:27:48 · 193 阅读 · 0 评论 -
C#初级教程-C#常用运算符
布尔运算布尔运算符-处理布尔值条件布尔运算符if else语法if()<code executed if is true>else<code executed if is false>如果if和else要执行的代码有多行,可以加上{}组成一个块if(<test>){ <code executed if <test>...原创 2020-02-24 15:26:28 · 243 阅读 · 0 评论 -
C#初级教程-初识C#
C#初级教程-初识C#1.C#和.net框架C#属于.net框架的内容工具:VS VScode 网站开发技术ASP.NETC#的历史标识符:标示符是一种字符串,用来命名如变量 方法 参数和许多后面要讲解的程序结构标识符不能和关键字重复不能有.字符不能以数字开头不能占用类似void public这种修饰符名变成规范:小驼峰法(一般用在变量名)首个单词的首字母小写,...原创 2020-02-24 15:24:19 · 303 阅读 · 0 评论