C# Unity 唐老狮 No.6 模拟面试题

news2025/3/6 9:21:06

     本文章不作任何商业用途 仅作学习与交流 安利唐老狮与其他老师合作的网站,内有大量免费资源和优质付费资源,我入门就是看唐老师的课程 打好坚实的基础非常非常重要:

全部 - 游习堂 - 唐老狮创立的游戏开发在线学习平台 - Powered By EduSoho

        如果你发现了文章内特殊的字体格式,那是AI补充的知识,我发现原网站下面有答案,我将会把答案以不同样式穿插在回答之中

目录

        C#

1.C#中如何让自定义容器类能够使用for循环遍历?(通过 类对象[索引] 的形式遍历)

2.C#中如何让自定义容器类能够使用foreach循环遍历?

3.C#中接口的作用是什么?说说你的理解

4.Unity引擎中哪些功能使用了C#的反射功能?至少说出一点

5.请问这三行代码,运行后,在堆上会分配几个“房间”

Unity

1.Unity中Awake和Start两个生命周期函数,分别在什么时候被调用?

2.Unity场景上有多个对象,都分别挂载了n个脚本。我们如何控制不同脚本间生命周期函数Awake的执行先后顺序?

3.想要在Unity中使用指针我们需要进行哪些操作?

4.Unity中的协同程序中yield return不同的内容,代表的含义不同请说明下面这些yield return的含义1.yield return 数字;2.yield return null;3.yield return new WaitForSeconds(数字);4.yield return new WaitForFixedUpdate();5.yield return new WaitForEndOfFrame();6.yield break;

5.使用Unity协同程序进行异步加载时,底层是否会使用多线程?


        C#

1.C#中如何让自定义容器类能够使用for循环遍历?(通过 类对象[索引] 的形式遍历)

        索引器

       C# &Unity 面向对象补全计划 之 索引器与迭代器-CSDN博客

2.C#中如何让自定义容器类能够使用foreach循环遍历?

        迭代器

        C# &Unity 面向对象补全计划 之 索引器与迭代器-CSDN博客

3.C#中接口的作用是什么?说说你的理解

        规范职责 , 依赖倒置 ,里氏替换管理子类

DP:

  1. 多态性:不同类实现同一接口,可统一调用。
  2. 解耦:降低模块间依赖,提高代码可维护性。
  3. 扩展性:通过接口扩展功能,无需修改现有代码。

        C# & Unity 面向对象补全计划 之 接口_unity c# 接口-CSDN博客

4.Unity引擎中哪些功能使用了C#的反射功能?至少说出一点

        加载特性:C# & Unity 面向对象补全计划 之 [反射]自动处理带有自定义[特性]的类-CSDN博客

        运行脚本,Inspector窗口设置值,编辑器开发

5.请问这三行代码,运行后,在堆上会分配几个“房间”

        2个 我们总是不得不感叹 关于内存的分配机制真的很牛,它内部做了比较处理

Unity

1.Unity中Awake和Start两个生命周期函数,分别在什么时候被调用?

        游戏运行或者实例化先Awake即使脚本未启用

         然后 OnEnable脚本开启 在第一次帧更新前调用Start 

2.Unity场景上有多个对象,都分别挂载了n个脚本。
我们如何控制不同脚本间生命周期函数Awake的执行先后顺序?

3.想要在Unity中使用指针我们需要进行哪些操作?

4.Unity中的协同程序中yield return不同的内容,代表的含义不同
请说明下面这些yield return的含义
1.yield return 数字;   等一帧
2.yield return null;    等一帧
3.yield return new WaitForSeconds(数字); 等时间缩放下的数字秒
4.yield return new WaitForFixedUpdate(); 等下一次FiexdUpdate
5.yield return new WaitForEndOfFrame(); 
帧渲染完成后执行
6.yield break; 退出协程

关于yield return new WaitForEndOfFrame(); 帧渲染完成后执行

此事该地介绍到事件函数的执行顺序 - Unity 手册  我将其图片复制过来 可以看个大概

 

5.使用Unity协同程序进行异步加载时,底层是否会使用多线程?

        协程本身是单线程分步,异步机制可单可多 要看代码

C# & Unity 同步/异步编程和多线程什么关系?async/await和coroutine又是什么?_unity同步和异步-CSDN博客

        

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2310468.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

二、Visual Studio2022配置OpenGL环境

文章目录 一、OpenGL库的下载二、OpenGL环境配置三、测试代码演示 一、OpenGL库的下载 OpenGL配置的库是GLFWGLAD ,GLFW 主要用于创建 OpenGL 窗口和管理输入;GLAD 主要用于加载 OpenGL 函数 GLFW下载地址 下载Windows的32bit版本即可。 下载完成解压如…

YOLOv8改进------------SPFF-LSKA

YOLOv8改进------------SPFF-LSKA 1、LSAK.py代码2、添加YAML文件yolov8_SPPF_LSKA.yaml3、添加SPPF_LSKA代码4、ultralytics/nn/modules/__init__.py注册模块5、ultralytics/nn/tasks.py注册模块6、导入yaml文件训练 1、LSAK.py代码 论文 代码 LSKA.py添加到ultralytics/nn/…

240 Vocabulary Words Kids Need to Know

《240 Vocabulary Words Kids Need to Know》是美国学乐出版社(Scholastic)推出的词汇学习系列练习册,专为美国小学阶段(G1-G6)设计,基于CCSS(美国共同核心州立标准)编写&#xff0c…

AI-Deepseek + PPT

01--Deepseek提问 首先去Deepseek问一个问题: Deepseek的回答: 在汽车CAN总线通信中,DBC文件里的信号处理(如初始值、系数、偏移)主要是为了 将原始二进制数据转换为实际物理值,确保不同电子控制单元&…

【五.LangChain技术与应用】【8.LangChain提示词模板基础:从入门到精通】

早上八点,你端着咖啡打开IDE,老板刚甩来需求:“做个能自动生成产品描述的AI工具”。你自信满满地打开ChatGPT的API文档,结果半小时后对着满屏的"输出结果不稳定"、"格式总出错"抓耳挠腮——这时候你真需要好好认识下LangChain里的提示词模板了。 一、…

LeetCode 718.最长重复子数组(动态规划,Python)

给两个整数数组 nums1 和 nums2 ,返回 两个数组中 公共的 、长度最长的子数组的长度 。 示例 1: 输入:nums1 [1,2,3,2,1], nums2 [3,2,1,4,7] 输出:3 解释:长度最长的公共子数组是 [3,2,1] 。 示例 2: 输…

python-leetcode-零钱兑换 II

518. 零钱兑换 II - 力扣(LeetCode) 这个问题是 完全背包问题 的一个变体,可以使用 动态规划 来解决。我们定义 dp[i] 为凑成金额 i 的硬币组合数。 思路: 定义 DP 数组 设 dp[i] 表示凑成金额 i 的组合数,初始化 dp[…

Sass 模块化革命:深入解析 @use 语法,打造高效 CSS 架构

文章目录 前言use 用法1. 模块化与命名空间2. use 中 as 语法的使用3. as * 语法的使用4. 私有成员的访问5. use 中with默认值6. use 导入问题总结下一篇预告: 前言 在上一篇中,我们深入探讨了 Sass 中 import 语法的局限性,正是因为这些问题…

利用Postman和Apipost进行API测试的实践与优化-动态参数

在实际的开发和测试工作中,完成一个API后对其进行简单的测试是一项至关重要的任务。在测试过程中,确保API返回的数据符合预期,不仅可以提高开发效率,还能帮助我们快速发现可能存在的问题。对于简单的API测试,诸如验证响…

【前端基础】Day 9 PC端品优购项目

目录 1. 品优购项目规划 1.1 网站制作流程 1.2 品优购项目整体介绍 1.3 学习目的 1.4 开发工具以及技术栈 1.5 项目搭建工作 1.6 网站favicon图标 1.7 网站TDK三大标签SEO优化 2. 品优购首页制作 2.1 常见模块类命名 2.2 快捷导航shortcut制作 2.3 header制作 2.4…

FFMPEG利用H264+AAC合成TS文件

本次的DEMO是利用FFMPEG框架把H264文件和AAC文件合并成一个TS文件。这个DEMO很重要,因为在后面的推流项目中用到了这方面的技术。所以,大家最好把这个项目好好了解。 下面这个是流程图 从这个图我们能看出来,在main函数中我们主要做了这几步&…

Linux搭建个人大模型RAG-(ollama+deepseek+anythingLLM)

本文是远程安装ollama deepseek,本地笔记本电脑安装anythingLLM,并上传本地文件作为知识库。 1.安装ollama 安装可以非常简单,一行命令完事。(有没有GPU,都没有关系,自动下载合适的版本) cd 到…

Docker 学习(二)——基于Registry、Harbor搭建私有仓库

Docker仓库是集中存储和管理Docker镜像的平台,支持镜像的上传、下载、版本管理等功能。 一、Docker仓库分类 1.公有仓库 Docker Hub:官方默认公共仓库,提供超过10万镜像,支持用户上传和管理镜像。 第三方平台:如阿里…

韩国互联网巨头 NAVER 如何借助 StarRocks 实现实时数据洞察

作者: Youngjin Kim Team Leader, NAVER Moweon Lee Data Engineer, NAVER 导读:开源无国界,在“StarRocks 全球用户精选案例”专栏中,我们将介绍韩国互联网巨头 NAVER 的 StarRocks 实践案例。 NAVER 成立于 1999 年&#xff0…

C语言学习笔记-初阶(30)深入理解指针2

1. 数组名的理解 在上一个章节我们在使用指针访问数组的内容时,有这样的代码: int arr[10] {1,2,3,4,5,6,7,8,9,10}; int *p &arr[0]; 这里我们使用 &arr[0] 的方式拿到了数组第⼀个元素的地址,但是其实数组名本来就是地址&…

【Wireshark 02】抓包过滤方法

一、官方教程 Wireshark 官网文档 : Wireshark User’s Guide 二、显示过滤器 2.1、 “数据包列表”窗格的弹出过滤菜单 例如,源ip地址作为过滤选项,右击源ip->prepare as filter-> 选中 点击选中完,显示过滤器&#…

MySQL基础四(JDBC)

JDBC(重点) 数据库驱动 程序会通过数据库驱动,和数据库打交道。 sun公司为了简化开发人员对数据库的统一操作,提供了一个Java操作数据库的规范。这个规范由具体的厂商去完成。对应开发人员来说,只需要掌握JDBC接口。 熟悉java.sql与javax.s…

基于CURL命令封装的JAVA通用HTTP工具

文章目录 一、简要概述二、封装过程1. 引入依赖2. 定义脚本执行类 三、单元测试四、其他资源 一、简要概述 在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具&…

cenos7网络安全检查

很多网络爱好者都知道,在Windows 2000和Windows 9x的命令提示符下可使用Windows系统自带的多种命令行网络故障检测工具,比如说我们最常用的ping。但大家在具体应用时,可能对这些命令行工具的具体含义,以及命令行后面可以使用的种…

蓝桥杯C组真题——巧克力

题目如下 思路 代码及解析如下 谢谢观看