当前位置: 首页 > news >正文

山西网站备案多久北京优化seo排名优化

山西网站备案多久,北京优化seo排名优化,天津市网站建设,东莞seo网站优化课时 4 : No.4 模拟面试题 C# 1. 请说明字符串中 string str null string str “” string str string.Empty 三者的区别 第一个未作初始化没有值, 第二个为空字符串, 答案: str null 在堆中没有分配内存地址 str "" 和 string.Empty 一样都是…

课时 4 : No.4 模拟面试题

C#

1. 请说明字符串中

string str = null
string str = “”
string str = string.Empty
三者的区别

第一个未作初始化没有值,

第二个为空字符串,

答案:
str = null 在堆中没有分配内存地址
str = ""string.Empty 一样都是在堆内存中分配了空间,里面存储的是空字符串
而string.Empty是一个静态只读变量

2. C#重载运算符,重载 == 和 != 以及万物之父Object基类中的虚方法 virtual bool Equals(Object obj)

对于我们的意义是什么?

==比较值类型的时候比较地址是否相同,Equals用于比较具体的内容是否相同;

可以重载运算符使得 == 与 Equal 有同样效果。

答案:
为了判断两个对象的非引用地址相等
我们可以选择 使用 重载运算符 ==!= 或者
重写Equals方法,来自定义判断两个对象是否相等
如果想保留原有的引用地址相等判断,那么一般我们选择重写Equals方法

3. 在开发时,对string和StringBuilder我们应该如何选择

stringbuilder多用于字符串拼接时使用

答案:
string在每次拼接时都会产生垃圾
而StringBuilder在拼接时,是在原空间中进行修改,不会产生垃圾,会自动帮助我们扩容
所以当字符串需要频繁修改拼接时,我们使用StringBuilder

4. 请简要说明.Net跨语言原理

答案:
.Net制定了了CLI公共语言基础结构的规则
只要是按照该规则设计的语言在进行.Net相关开发时
编译器会将源代码(C#、VB等等)编译为CIL通用中间代码。
也就是说不管什么语言进行开发,最终都会统一规范变为中间代码
最终通过CLR(公共语言运行时或者称为.Net虚拟)将中间代码翻译为对应操作系统的原生代码(机器码)
在操作系统(Windows)上运行

5. 请简要说明.Net跨平台原理

答案:
由于.Net Framework中利用CLI和CLR实现了跨语言,CLR主要起到一个翻译、运行、管理中间代码的作用
.Net Core和Mono就是利用了CLR的这一特点,为不同操作系统实现对应CLR(公共语言运行时或.Net虚拟机)
那么不同操作系统对应的CLR就会将IL中间代码翻译为对应系统可以执行的原生代码(机器码)
达到跨平台的目的

Unity

1. Unity中的Destroy和DestroyImmediate的区别是什么?

Destroy不可以在编辑器模式下使用

答案:
Destroy方法
可以指定删除的延迟时间,如果第二个参数不填写,最快也会在下一帧前完成删除。也就是如果Destroy对象后马上判空,该对象不会为空。
实际的对象销毁操作始终延迟到当前更新循环结束,但始终在渲染前完成DestroyImmediate方法
会立即销毁删除对象

2.外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

请问最终打印的 s 的结果为?

答案:
AC
主要考点
1.DestroyImmediate方法会立即将GameObject对象从场景上删除
2.UnityEngine.Object中对 ==!=! 进行了重载,如果用  !go 和 go == null 去判断对象是否为空,由于重载了,所以能够返回正确的结果 ture 和 false
但是本质上此时的 go 还不是真正意义上的的null,所以如果用 go is null
或者 将其转换为 万物之父 Object  (System.Object)go == null 去判断时 并不会为true
因此只会进入AC的if语句这里的重点内容就是UnityEngine.Object 中重载了 逻辑非!== != 运算符,因为使用他们来判断null 是可以的,但是此时的GameObject在内部并不是真正意义的null
我们在使用时最好手动置空

3. 第一次执行GameObject.Instantiate时可能出现明显的卡顿如何解决该问题?

答案:
我们可以通过Unity自带的性能分析工具Profiler分析实例化时造成卡顿的原因
程序上,一般我们可以从以下3个方面去优化它
1.相关资源加载:如果是由于资源加载带来的卡顿,我们可以在进入场景时进行资源预加载,总体思路就是将较大资源提前或者分帧加载2.脚本初始化:实例化对象时,会同步执行它身上挂载所有脚本的初始化工作,我们可以策略性的改变一些初始化逻辑,尽量不要再Awake和Start中做较复杂的逻辑,或者将复杂逻辑提前或者分帧处理3.对于会频繁使用的对象,我们可以使用缓存池美术上
不能只追求好的美术效果,而不考虑资源的消耗,要根据项目的实际情况,来设定模型的骨骼数、面数以及贴图的数量和大小上限。
在制作粒子特效时,粒子数、粒子面积、贴图等都要尽量少和小。
美术上要遵循:用最少的资源做出做好的效果,不能一味的用性能去换效果,最终会得不偿失

4. Lua如何实现面向对象的三大特性?

答案:
面向对象三大特性
封装:利用table进行封装
继承:利用元表和__index模拟继承关系设置子类的元表为父类,父类的__index为父类自己当子类身上找不到对应属性和方法时会查找元表的__index中的内容,也就是会查找父类中的内容通过这种方式来模拟继承
多态:子类自己去实现带:的同名方法即可

5. Unity使用IL2CPP打包时,我们应该注意什么?如何避免(可以举例说明)

答案:
使用IL2CPP打包时,最可能出现的问题就是代码裁剪,IL2CPP会自动将它认为不会使用的代码裁剪掉,比如我们在使用Lua开发时,其实会用到很多UnityEngine或者我们自己写的C#代码,但是这些代码并不会在引擎中直接使用,都是在Lua中使用的,此时最容易出现的问题就是代码裁剪,导致打包后出现异常和报错。要避免IL2CPP的裁剪有3种方式,我们可以组合使用
1.设置打包时的裁剪等级
2.通过xml文件配置明确规定哪些内容不裁剪
3.在静态方法中显示调用不想被裁剪的内容
http://www.hkea.cn/news/606748/

相关文章:

  • 个人网站怎么做互联网营销师培训课程免费
  • 微信网站建设价格网站开发报价方案
  • wordpress utc时间慢8小时大连seo关键词排名
  • 中国建设承包商网站创建软件平台该怎么做
  • 中小企业网站建设费用海外推广服务
  • 企业名称的英文做网站名seo是怎么优化推广的
  • 手机在线建站西安seo服务公司
  • 网站开发有前途吗我也要投放广告
  • 备案 网站名称怎么写crm软件
  • 扁平式网站模板b2b网站推广优化
  • 做外贸网站网络营销咨询服务
  • 江门网站建设方案报价淘宝seo优化怎么做
  • 盘龙城做网站推广网站推广
  • 如何做电子书网站域名站长工具
  • 物联网平台有哪些排名优化外包公司
  • 秦皇岛汽车网站制作数字营销工具
  • 培训教育的网站怎么做东莞做网站的联系电话
  • 云南做网站的公司外贸谷歌优化
  • 网页设计学徒培训可试学巢湖seo推广
  • 让顾客心动的句子seo模拟点击软件源码
  • 设计类专业包括哪些kj6699的seo综合查询
  • 手机网站制作哪家好查关键词
  • 米拓企业网站管理系统电商培训机构排名前十
  • 做效果图有哪些网站seo点击排名
  • 网络营销推广网站收录seo推广排名平台有哪些
  • 产品经理如何看待网站开发广州软件系统开发seo推广
  • wordpress 忘记管理员如何做网站seo
  • app和网站哪个有优势淘宝关键词排名
  • wordpress该域名宁波网站seo公司
  • 建购物网站怎么建呀简单的网站建设