pointer-to-object casting και ISO C++
Eustathios Kamperis
ekamperi at auth.gr
Wed Mar 1 04:03:19 EET 2006
Καλημέρα σε όλους!
Θεωρήστε το εξής κομμάτι κώδικα:
void foo(const void *pf) {
cout << "Function address: " << pf << endl;
}
void tralala() {
}
foo((void *) &tralala);
Αν κάνω compile με την παράμετρο -pedantic, ο compiler παραπονείται για
το εξής:
"warning: ISO C++ forbids casting between pointer-to-function and
pointer-to-object"
Αν παραλείψω την παράμετρο -pedantic, το πρόγραμμα μεταγλωττίζεται και
εκτελείται σωστά.
Γνωρίζετε κάποιο τρόπο *συνεπή* με το πρότυπο της C++ κατά ISO για να
περνάω στη foo() τη διεύθυνση της tralala(). Αν όχι, έχετε να μου
προτείνετε κάποια εναλλακτική προσέγγιση στο όλο θέμα;
Ευχαριστώ πολύ! :)
More information about the Linux-greek-users
mailing list