平时我们在新建变量时都会看到让选择全局变量还是私有变量。
一般程序不太复杂的时候都无脑全局了,对于私有变量用的相对较少。今天翻到一个蓝桥杯的Scratch培训例题,刚好就在这个变量类型上出了差错,特此记录一下。
题目大致意思是点名,要求发出命令后一堆克隆角色依次报数1.2.3.....很显然,难点在于克隆体具有完全复制本体的特性,那又如何让克隆体报出各自不同的数字呢?
显然在每次克隆之后,本体必须有所变化,这样才能把变化后的新特性留给下个克隆体,同时这个特性不会随本体的变化而变化。这个所谓的“变化”就是私有变量。给本体设置一个报数号,每次复制后将号码+1,这样每个克隆体就会依次保留一个不同的号码。
发现这个问题是因为一开始将变量设为全局了,点名时候发现所有克隆体报的都是一样的数。仔细想了下逻辑才发现要设为私有变量。这应该算是个比较典型的应用了吧。