教科书中的指针赋值

时间:2013-04-02 23:50:46

标签: c++ pointers

在我的c ++教科书中,出现以下代码:

B * pointerToB = new B();
A * pointerToA = pointerToB();

我对指针非常熟悉,但令我困惑的是第二行末尾的括号。我以前从没见过这样做过。我期待的更像是:

A * pointerToA = &(*pointerToB);

我已经仔细检查了我的教科书,但是很简短。最后,我得出结论

A * pointerToA = pointerToB(); // is synonymous with
A * pointerToA = &(*pointerToB); // this line

以下是A类和B类的实现:

class A {
public:
 A (): dataOne(2){}
 virtual void whoAmI(){printf("class A");}
private:
 int dataOne;
};

class B : public A {
public:
 B (): dataOne(4){}
 virtual void whoAmI(){printf("class B");}
private:
 int dataTwo;
};

我的推理是否合理?

0 个答案:

没有答案