C++ 指針的指針小知識

今天發現一個有趣的東西,我對一個自定義的類創建了一個二維指針。僞碼如下:

class A{
     func();
}

A **tmp;

按慣例申請空間初始化之後,想要方位A[i]的函數func
但是,這樣都不會彈出func的補全,也就是說編譯好像找不到對應的對象

*tmp->
tmp->
tmp[i].

但是自己把函數名寫上可以正確運行,按如下形式

*tmp->func();
tmp[i]->func();

原因沒找到,估計是因爲無法在未編譯時定位指針的指針,如果一定要觀察是否指向正確的對象,可以如下操作

A *p = nullptr;
p = tmp[i];
p->func();

注:本文中全爲隨意僞碼,不可運行。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章