1. bind(3) LP MudOSv21c7 (7 Jul 1996)
    2. 函数名称:
    3. bind() - 变更一个函式指标 (function pointer) 所指向的
    4. 函式.
    5. 函数语法:
    6. function bind( function f, object ob )
    7. 函式指标 bind( 函式 f, 物件 ob )
    8. 函数用法:
    9. 传回一个指向 f 的函式指标, 但是指标属於物件 ob ,
    10. 而不是创造 f 的物件. 如果 f 的创造者被摧毁、f
    11. 是一个超越函式 (emulated function, efun)
    12. 指标、或是指标指向的超越函式会对 this_object
    13. 一些处理时, bind() 就很有用.
    14. □例:
    15. void make_living(object ob) {
    16. function f;
    17. f = bind( (: enable_commands :), ob );
    18. evaluate(f);
    19. }
    20. 以上例子的作用, 相当於物件 ob 自己处理
    21. enable_commands() 的超越函式. 注意 !! 这个例子会引
    22. 发一些系统安全上的风险, 因为 bind() 可以让你强迫其
    23. 他的物件执行一段程式码. 为了要防止 bind() 被滥用,
    24. 有一个主宰物件函式 (master apply) valid_bind()
    25. 以用来决定 bind() 的执行与否. 呼叫 bind() 时, 如果
    26. valid_bind() 传回 1 即可执行, 传回 0 就无法执行.
    27. 手册翻译:
    28. Phoebus@ZH 1997.Aug.16. (Writen 5/23/97)