Solidity Movie Fun:结构包装

结构打包是Linda Hamilton(作为Sarah Connor)在《 终结者2:审判日》中陷入困境的升级。

因为上下文就是一切,所以首先让我们在第一个《 终结者》中仔细看看莎拉:

在本文中,我们称她为SarahLinda。 莎拉·琳达(SarahLinda)在《 终结者》(Terminator)的大多数地方扮演着美国的甜心,这是一位漫无目的的服务生,有着一颗金子般的心。 但是,在摆弄武器库存的处女凯尔(Kyle)之后,就讲述了一个奇怪的,令人难以置信的故事,讲述了他为何拥有她的照片,之后,她了解了自己一生的事实。 就是说,未来的死亡机器人正以其谋杀莎拉·琳达和她所认识的所有人的快乐之路,这全都归功于莎拉·琳达的肥沃子宫。 因此,她有点坚强,因为你知道生存。

没有更好的隐喻用于结构打包。

这是两个片段,它们模仿了这种情况*:

  struct sarahLindaTerm { 
天真
像小猫一样
鲁less
}

进入

  struct sarahLindaTerm2 { 
uint16天真;
uint16小猫
鲁re
}

因此,以此类推:

  • struct是SarahLinda的生命上下文,它可以限制uint256uint256uint256的默认值,但struct内部除外)
  • struct sarahLindaTerm代表《 终结者》中的 SarahLinda角色
  • struct sarahLindaTerm2代表《 终结者2》中 SarahLinda的角色
  • 在这两种结构中,uint值naivekittenLike以及kittenLike代表了kittenLike这些鼻子特征
  • 从对naivekittenLike类的分类(从uintuint16的更改实现了结构打包的过程。 这最大程度地减少了她个性的这些方面,减少了他们可以占用的空间

Solidity中的结构填充会迫使存储压缩,从而减少了气体消耗 。 当SarahLinda从“ la-te-da”升级到“ MOVE bitch!”时,她的坏蛋程度不断提高,她通过允许naivekittenLike的价值观占用更少的个性空间来最大限度地提高生存效率。 也许它们仍然在所有黑色衣服的下面,但是这些特性大大降低了。 reckless ,您会注意到,并没有受到限制。 她可能仍然需要很多空间,这样情节才能保持友善和动感十足。

莎拉琳达(SarahLinda)不再花很多时间naive ! 她通过压缩这些特性节省了气体(能量),从而最大程度地提高了生存机会。 也许, 也许 ,她会活下来。

开发免责声明!:此代码用于说明类比! 请为圣洁的一切所爱,请不要在您的链式代码中拍打。