D 语言 - this 指针
D 中的每个对象都可以通过一个名为 this 指针的重要指针访问自己的地址。 this 指针是所有成员函数的隐式参数。 因此,在成员函数内部,this 可以用来引用调用对象。
让我们尝试下面的例子来 理解this 指针的概念 −
import std.stdio; class Box { public: // 构造函数定义 this(double l = 2.0, double b = 2.0, double h = 2.0) { writeln("Constructor called."); length = l; breadth = b; height = h; } double Volume() { return length * breadth * height; } int compare(Box box) { return this.Volume() > box.Volume(); } private: double length; // Length of a box double breadth; // Breadth of a box double height; // Height of a box } void main() { Box Box1 = new Box(3.3, 1.2, 1.5); // Declare box1 Box Box2 = new Box(8.5, 6.0, 2.0); // Declare box2 if(Box1.compare(Box2)) { writeln("Box2 is smaller than Box1"); } else { writeln("Box2 is equal to or larger than Box1"); } }
当上面的代码被编译并执行时,会产生以下结果 −
Constructor called. Constructor called. Box2 is equal to or larger than Box1
❮ d_programming_classes_objects.html