Ho letto dei suggerimenti per i membri della classe, ma non li ho mai visti in nessuna applicazione pratica. Qualcuno può spiegare quali sono i casi d'uso di tali indicatori? È davvero necessario avere questi suggerimenti?A cosa servono i puntatori ai membri della classe?
Es.
class abc
{
public:
int a;
abc(int val) { a = val; }
};
int main()
{
int abc::*data;
abc obj(5);
data = &abc::a;
cout << "Value of a is " << obj.*data << endl;
return 0;
}
In quanto sopra ad es. perché il valore di "a" è acceduto in questo modo? Qual è il vantaggio di usare i puntatori ai membri della classe?
'std :: mem_fun()' et al. contare su pointer-to-member. – wilhelmtell
Sì, ma incapsulano l'utilizzo: raramente ho bisogno di dichiarare i pointer-to-member da un po 'di tempo. –
Per la chiarezza della dimostrazione, probabilmente avrei usato 'map :: operator []': la combinazione 'insert' e' make_pair' è così prolissa: p Buona risposta grazie :) –