簡體   English   中英

指向類方法調用的C ++指針

[英]C++ pointer to a class method call

在我的類Tabla中,我有一個指向方法的公共指針:

public:
    int (Tabla :: *punterofunc)(int,int);

我主要將其指向類方法:

tablita.punterofunc = &Tabla :: in_lineal;

但是這個電話不起作用!

 tablita->punterofunc(num,0);

我認為您正在尋找這種美味的語法:

((tablita).*(tablita.punterofunc))(num,0);

tablita.punterofunc是成員函數指針。 在對象o上調用指向成員函數的指針p的一般語法為:

((o).*(p))(args...);

只需將其應用於您的代碼即可。 (不一定會在所有情況下都不需要某些括號(不確定),但是如果堅持下去,它應該一直有效。)

嘗試這個:

tablita.*punterofunc(num,0);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM