9.Godot数组|遍历|静态变量|对象|调试

news/2024/9/24 22:35:17/

数组和字典的遍历

数组的概念
  • 数组是一组数据的集合。在程序中负责批量处理数据。
  • 数组中的元素可以包括各个类型的数据,也可以对数组内数据类型进行限定。
  • 可以通过 数组名【数字】 的形式来访问数组元素,数字 0 代表数组的第一个元素。
  • 数组可以通过调用函数来增加或去除内部数据。可以使用 size()来获取数组内元素总数。
  • 数组是引用变量
  • 引用变量:执行 变量 A= 变量 B 这段代码时,变量 A 不会重新创建一个与 B 变量值相同的数据。对于 A 变量的修改可以影响到 B。
数组遍历
func arrayIterator():# range等价于for(int i = 0; i < 20; i++)print("数组遍历方法1:")for i in range(3):print(i)print("数组遍历方法2:")for ele in arr:print(ele)print("数组遍历方法3:")for index in range(arr.size()):print(arr[index])
字典遍历
func dictionaryIterator():print("字典遍历方法1:")for key in dict:print("key:" + key as String)print("value:" + dict[key] as String)print("字典遍历方法2:")for key in dict.keys():print("key:" + key as String)print("value:" + dict[key] as String)print("字典遍历方法3:")for value in dict.values():print("value:" + value as String)	

静态变量和静态方法

  • const常量
const ANSWER = 42
  • 静态变量,常量和静态变量不是一个东西,有区别的
static var my_static_field = 42
  • 静态方法
  • 静态方法只能访问静态常量
static func getAnswer():return ANSWER

13. 对象

  • 真实生活中的对象,属性和方法
  • 真实生活中,一辆汽车是一个对象。对象有它的属性,如重量和颜色等,方法有启动停止等
# Inner class,默认继承Object
class Animal:extends Object  # 如果不指定继承的类,默认基础Objectconst STATIC_FIELD = "静态变量"# 属性var height: intfunc _init():print("Animal 构造方法")func move():print("animal,移动")static func staticFuction():pass
  • 使用super关键字调用父类方法

14. 调试

  • 在编写 GdScript 时,如果没有调试工具将是一件很痛苦的事情。
  • 你的代码可能包含语法错误,逻辑错误,有了调试工具,这些错误比较容易发现。

方法
![[Pasted image 20240419153107.png]]

每一行的左边点击一下可以打断点
![[Pasted image 20240419153212.png]]

打两个断点
这时候运行一下程序
就会在第一个断点处停下来
![[Pasted image 20240419153324.png]]

通过下面的debug页面
可以查看栈帧和变量
![[Pasted image 20240419153603.png]]

打开跳过断点,就会关闭断点调试,路过断点不会进入调试界面

![[Pasted image 20240419153730.png]]

  1. 复制错误信息

  2. 单步进入
    可以进入函数运行代码
    ![[Pasted image 20240419153800.png]]

  3. 单步跳过
    一行一行执行代码
    ![[Pasted image 20240419153807.png]]

  4. 继续
    ![[Pasted image 20240419154017.png]]

继续运行程序
如果有下一个断点,到下一个断点停止

15. 参考资料

  • godot官方文档
  • Godot Tutorials的GDScript Fundamentals Tutorial Series,youtube播放量最高的godot教程视频
  • Godot Tutorials的Godot Basics Tutorial Series,youtube播放量最高的godot教程视频
  • B站视频

http://www.ppmy.cn/news/1438230.html

相关文章

面试经典150题——加油站

面试经典150题 day14 题目来源我的题解方法一 找最低点方法二 贪心 题目来源 力扣每日一题&#xff1b;题序&#xff1a;134 我的题解 方法一 找最低点 参考 labuladong 找到最低点的下一个站 经过i之后变成最低点&#xff0c;则从i1站开始 时间复杂度&#xff1a;O(n) 空间…

水库自动化监测系统包括哪些内容

随着科技的不断进步&#xff0c;水库管理正逐步实现自动化和智能化。水库自动化监测系统是一种利用水位、流量、水温及气象等传感器组成的水情自动监测系统&#xff0c;其在水库大坝安全监测领域发挥着重要作用&#xff0c;实现了对水库实时水位、流量等数据的采集监控&#xf…

c++11 标准模板(STL)本地化库 - 平面类别(std::collate) - 定义字典序比较和字符串的散列(二)

本地化库 本地环境设施包含字符分类和字符串校对、数值、货币及日期/时间格式化和分析&#xff0c;以及消息取得的国际化支持。本地环境设置控制流 I/O 、正则表达式库和 C 标准库的其他组件的行为。 平面类别 定义字典序比较和字符串的散列 std::collate 类 std::collate 封…

【机器学习】机器学习学习笔记 - 监督学习 - 逻辑回归分类朴素贝叶斯分类支持向量机 SVM (可分类、可回归) - 04

逻辑回归分类 import numpy as np from sklearn import linear_modelX np.array([[4, 7], [3.5, 8], [3.1, 6.2], [0.5, 1], [1, 2], [1.2, 1.9], [6, 2], [5.7, 1.5], [5.4, 2.2]]) y np.array([0, 0, 0, 1, 1, 1, 2, 2, 2])# 逻辑回归分类器 # solver&#xff1a;求解器&a…

深入浅出 SQL 优化:全面提升查询性能的技巧

文章目录 前言一、表结构分析1. 索引分析2. 数据类型分析3. 思考反范式设计的适用场景与潜在风险3.1数据冗余3.2 数据一致性3.3 更新性能 4. 关注临时表的创建与使用。4.1.尽量减少临时表的使用&#xff0c;以降低系统资源的消耗。4.2 使用合适的索引和数据类型优化临时表的性能…

PPSSPPSDL for Mac v1.17.1 PSP游戏模拟器(附500款游戏) 激活版

PPSSPPSDL for Mac是一款模拟器软件&#xff0c;它允许用户在Mac上运行PSP&#xff08;PlayStation Portable&#xff09;游戏。通过这款模拟器&#xff0c;用户可以体验到高清甚至更高的分辨率的游戏画面&#xff0c;同时还能够升级纹理以提升清晰度&#xff0c;并启用后处理着…

vue3 子组件实现v-model用法

在Vue 3中&#xff0c;实现自定义的input组件并支持v-model绑定&#xff0c;涉及到对modelValue这个默认prop的处理和对应的update:modelValue事件的触发。Vue 3使得这个过程比Vue 2更为简化和灵活&#xff0c;尤其是在可以自定义绑定的属性和事件名方面。 步骤 1: 创建自定义…

一个简单的java递归下降语法分析器例子

import parser.Parser; import parser.RecursiveDescentParser;import java.util.ArrayList; import java.util.Arrays; import java.util.List;public class Main {public static void main(String[] args) {// 关键词List<String> keyList new ArrayList<>(Arra…