- 1
- 0
- 约4.83千字
- 约 7页
- 2026-08-08 发布于河北
- 举报
手游客户端开发面试题(含详细实战答案)
一、C#基础核心面试题(手游高频)
1、值类型和引用类型的区别?手游开发中常见使用场景?
参考答案:
核心区别就两点:内存存储位置、赋值逻辑。
值类型存在栈内存,赋值是完整拷贝一份数据,两个变量完全独立,互不影响;常见的有int、float、bool、struct、枚举。
引用类型存在堆内存,栈里只存内存地址,赋值是拷贝地址,多个变量指向同一个堆对象,改一个全变;常见的有class、string、数组、List、Dictionary。
手游实战场景:
1)游戏坐标、向量、属性配置用struct(值类型),避免堆内存频繁分配产生GC;
2)角色、道具、技能这类复杂对象用class(引用类型),全局多处引用同一个对象,节省内存;
3)频繁修改的数值尽量不用class,防止无意间篡改全局数据。
2、什么是GC?手游GC卡顿的主要原因?怎么规避?
参考答案:
GC是垃圾回收,C#自动清理堆内存中没有引用的对象,但是回收过程会阻塞主线程,这是手游掉帧、卡顿的核心原因。
手游常见GC来源:
1)Update、FixedUpdate每帧new对象(newVector3、newList、字符串拼接);
2)频繁装箱拆箱(值类型转object、字典key/value用值类型装箱);
3)字符串频繁拼接(string不可变,每次拼接都会新建对象);
4)
您可能关注的文档
最近下载
- 广西崇左市广西大学附属中学2024-2025学年高一上学期分班测试数学试题A(无答案).docx VIP
- 罗马V食管疾病诊断标准更新要点总结2026.docx VIP
- 《涉农贷款专项统计制度》.doc VIP
- Critical Analysis of Crack Propagation Laws英文资料.pdf VIP
- 雨课堂学堂在线《数字插画(湖北艺术职业学院)》学堂云单元测试考核答案.pdf
- 西安石油大学2022-2023学年第2学期《高等数学(下)》期末试卷(A卷)附标准答案.pdf
- 高考数学专项复习:指数函数与对数函数【8大经典基础题+7大优选提升题】原卷版.pdf VIP
- 3.2 一元一次方程及其解法(第1课时一元一次方程)(课件)六年级数学上册(沪教版2024).pptx VIP
- 2.2基因在染色体上 课件 高中生物(人教版)必修2.pptx VIP
- (暑假班)2025年人教A版高一数学暑假讲义3.2.2 函数的奇偶性+课后巩固练习+随堂检测(教师版).doc VIP
原创力文档

文档评论(0)