作用域解析运算符

计算机编程中,作用域是名字(name)与实体(entity)的绑定(binding)保持有效的那部分计算机程序,表达式只有在其作用域中才能求值作用域解析运算符(scope resolution operator)用于辨识和指出标识符属于哪个作用域上下文,特别是属于哪个命名空间。很多编程语言的作用域解析运算符写为::

Modula-3影响的一些编程语言(如PythonGo语言),模块(module)是对象,模块的作用域解析是对象成员访问的一种特殊情形,因此通常用.来作用域解析。其他语言,如C++Ruby语言支持作用域解析和成员访问。

class A {
public:
    static int i; // scope of A
};

namespace B {
    int c = 2;
}  // namespace B

int A::i = 4;  // 类的静态成员的作用域解析 
int x = B::c;  // 命名空间中的变量的作用域解析

PHP语言中,作用域解析运算符称作Paamayim Nekudotayim (希伯來語פעמיים נקודותיים‎, 发音:[paʔaˈmajim nekudoˈtajim],来自希伯来语[1]

$ php -r ::
Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM

外部链接

编辑

参考文献

编辑
  1. ^ Scope Resolution Operator. PHP 5 Manual. [2007-08-09].