其他语言是否具有与PHP类似的ArrayAccess功能?

时间:2011-03-13 16:44:30

标签: php arrays programming-languages

长话短说,有一个名为ArrayAccess的PHP功能,它允许您为您的类重载[]运算符(以及我认为的其他内容),因此您可以使用自定义类MyClass implements ArrayAccess哪个$myVariable是一个实例,并执行类似

的操作

$myVariable[]=6;

$someVar=$myVariable[78];

在你定义了它的行为之后。

我觉得这个功能相当优雅和有用,并且想知道这是否可以用其他编程语言

谢谢!

2 个答案:

答案 0 :(得分:2)

C ++在运算符重载方面支持这一点。

大多数.Net语言都支持索引器。

答案 1 :(得分:1)

Python 也支持它,通过实施"magic" methods __getitem__ and __setitem__

使用它们,你甚至可以像obj[i:j]一样支持切片。