跳至内容

程序学/Sway 演示文稿/对象/PublicAndPrivateComponents2

来自维基教科书,面向开放世界的开放书籍

公共和私有组件

我们重载赋值,以便只有变量会出现在赋值运算符的左侧。

   function =($a,b)
       {
       var assign = shadowed(:=);
   
       if (type($a . code) != :VARIABLE)
          {
          throw(:restrictedAssignment,
              "you are only allowed to assign to simple variables");
          }
   
       $a assign b;
       }

因此,任何类似于

   x . a = 3;

这样的内容都会抛出一个异常。

由于赋值函数可以直接访问变量,因此它们不受此更改的影响。


下一页 上一页 顶部

华夏公益教科书