从编程中思考:大脑的局部与全局模式(一)

        郭靖正在帐篷中用Unity写代码,刚写完一段代码。欧阳锋从帐篷外走进来,正要说点什么,郭靖反应敏捷,转身反手一招神龙摆尾击出,将欧阳锋震出帐篷,灰溜溜逃跑。

using UnityEngine;public class LocalGlobalDemo : MonoBehaviour
{int global = 10;void Start(){int local = 10;Excute();Debug.Log(global);Debug.Log(local);}void Excute(){global++;local++;}
}

        local++;下面有条红色的波浪线,表示这一句存在错误,郭靖没想明白欧阳锋为何进来,看着屏幕上的代码陷入沉思。一阵风吹过,欧阳锋再度冲入帐篷向郭靖袭来,这次他使上蛤蟆功,势要将他拿下。没想到郭靖使出左右互搏术,欧阳锋一时要对付两名郭靖,左右手自顾不暇,一掌被郭靖击出帐篷,灰溜溜逃跑。

        郭靖被欧阳锋激怒,心里愤愤不平:这混蛋今天吃错了什么药,这么来劲。但眼下完成作业对他更重要,他带着忐忑不安的心情切换出了Unity的编辑器,正想着运行代码看看,无意间撇了一眼Unity左下角的位置,报错了?报错提示为:

Assets\Scripts\LocalGlobalDemo.cs(18,9): error CS0103: The name 'local' does not exist in the current context

郭靖恍然大悟,提示local这个变量在当前上下文中不存在,因为local是局部变量,在Excute方法中看不到Start方法中int local=10;的定义;上下文中有int global=10;的定义,global是全局变量,在Excute方法中可以看到global,可以正常使用。正确的代码应该是:

using UnityEngine;public class LocalGlobalDemo : MonoBehaviour
{int global = 10;void Start(){int local = 10;Excute();Debug.Log(global);Debug.Log(local);}void Excute(){global++;}
}

修改后他自信地运行代码,结果为:

        郭靖欣喜若狂,成功了!此时欧阳锋杀入帐篷,趁他不备,从他背后袭来,一掌将他击出内伤,然后晕过去……

        我们的大脑在专注做一件事情的时候,突然有人来打扰,受到对一个人的偏见,很容易进入到局部模式,就好像局部变量,它的作用范围只在Start方法内,Start方法之外的世界它看不见。我们都知道欧阳锋心狠手辣,郭靖反击一点也不意外,但这是我写的一个故事,欧阳锋进来的时候要说点什么,如果他只是想和郭靖一起讨论编程上的问题呢?郭靖可能只是觉得欧阳锋没有征求他的意见就闯入他的帐篷,觉得无理,故一掌击出。

        我们的大脑在专注做一件事情的时候,突然有人来打扰,更需要努力切换到全局模式,就好像全局变量,它可以看到整个类中的世界,可以在Excute方法中执行global++;并在Start方法中将最终结果显示出来。如果郭靖当时切换到全局模式呢?他可能愿意给予欧阳锋说话的时间,让他事情说清楚,这样他们就会一起讨论编程的事情,也就不会有欧阳锋心里愤愤不平后面两次的偷袭,郭靖也就不会因此受伤。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入解析Python中的break、continue和pass语句

在Python编程中,控制流语句是一种常见的工具,用于控制程序的执行顺序和流程。其中,break、continue和pass语句是控制循环的重要组成部分。本文将深入解析Python中的break、continue和pass语句,包括其基本语法、应用场景和最佳实践…

鸿蒙开发笔记(二十二): 页面路由(router),组件导航 Navigation, Tabs

1. 页面路由 router 页面路由指在应用程序中实现不同页面之间的跳转和数据传递。HarmonyOS提供了Router模块,通过不同的url地址,可以方便地进行页面路由,轻松地访问不同的页面。本文将从页面跳转、页面返回和页面返回前增加一个询问框几个方…

three.js从入门到精通系列教程052 - 制作立方体添加重影特效

<html><head><meta charset"UTF-8"><title>three.js从入门到精通系列教程052 - 制作立方体添加重影特效</title><script src"ThreeJS/three.js"></script><script src"ThreeJS/jquery.js"><…

【Java程序员面试专栏 专业技能篇】MySQL核心面试指引(一):基础知识考察

关于MySQL部分的核心知识进行一网打尽,包括三部分:基础知识考察、核心机制策略、性能优化策略,通过一篇文章串联面试重点,并且帮助加强日常基础知识的理解,全局思维导图如下所示 本篇Blog为第一部分:基础知识考察,子节点表示追问或同级提问 基本概念 包括一些核心问…

imgaug库图像增强指南(31):iaa.JpegCompression——探索压缩与质量的微妙平衡

引言 在深度学习和计算机视觉的世界里&#xff0c;数据是模型训练的基石&#xff0c;其质量与数量直接影响着模型的性能。然而&#xff0c;获取大量高质量的标注数据往往需要耗费大量的时间和资源。正因如此&#xff0c;数据增强技术应运而生&#xff0c;成为了解决这一问题的…

Web即时通信技术——WebRTC

WebRTC&#xff08;Web Real-Time Communication&#xff09;是一个开放的项目&#xff0c;旨在在网页端提供实时的音频、视频和数据通信&#xff0c;不需要插件或其他附加软件。它是由Google主导&#xff0c;并在Mozilla、W3C和IETF等组织的支持下开发。WebRTC的目标是使浏览器…

IOS-生命周期-Swift

目录 App生命周期应用状态未运行——Not running未激活——Inactive激活——Active后台——Backgroud挂起——Suspended 关系图生命周期方法相关方法注意在其他地方监听 ViewController生命周期UIView生命周期 App生命周期 应用状态 App主要有五种状态&#xff0c;分别是&…

C++版QT:鼠标事件

鼠标常用的事件可以说有一下几种&#xff1a;鼠标按下、鼠标移动、鼠标移动、鼠标双击和鼠标滚轮事件。 当你想使用他们&#xff0c;需要包含头文件&#xff1a;#include <QMouseEvent> 需要对鼠标事件进行处理时&#xff0c;通常要重新实现以下几个鼠标事件处理函数&a…

什么是 metadata(元数据、meta、metadata、诠释资料、元资料)

我们首先看一下维基百科的介绍&#xff1a; 元数据&#xff08;Metadata&#xff0c;又译作诠释资料&#xff0c;元资料&#xff09;&#xff0c;是一群数据&#xff0c;其内容提供了有关于另一群数据的信息。英文前缀词 meta- 的意思是之后&#xff0c;进而有超出界限&#x…

牛客网-----跳石头

题目描述&#xff1a; 一年一度的“跳石头”比赛又要开始了! 这项比赛将在一条笔直的河道中进行&#xff0c;河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间&#xff0c;有N块岩石(不含起点和终点的岩石)。在比赛过程中&#xff0…

第9章-网络设备基本调试

1. 网络连通性测试 ping命令 定义&#xff1a;基于ICMP协议开发的应用程序&#xff0c;检测网络连通性&#xff1b; 功能&#xff1a; ① 检测网络连接的状态&#xff1b; ② 检测目标计算机是否在线&#xff1b; ③ 定位故障排除&#xff1b; ④ 检测网络延迟和丢包情况&#…

AI智能分析网关V4车辆检测算法及车辆结构化数据在车辆智能管控中的应用

AI边缘计算智能分析网关V4车辆检测、车牌识别算法融合了ORC识别、云计算、计算机视觉、大数据检索等多种技术&#xff0c;可将运动中的机动车牌照从复杂的背景中提取并识别出来&#xff0c;通过车牌提取、图像预处理、特征提取、车牌字符识别等流程&#xff0c;识别出车辆牌号、…