pointer-to-object casting και ISO C++
Constantine Dokolas
cdokolas at Sunsoftgr.com
Wed Mar 1 10:32:53 EET 2006
Eustathios Kamperis wrote:
> Καλημέρα σε όλους!
>
> Θεωρήστε το εξής κομμάτι κώδικα:
>
> 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(). Αν όχι, έχετε να μου
> προτείνετε κάποια εναλλακτική προσέγγιση στο όλο θέμα;
Κάτι δεν κάνεις σωστά. Ελπίζω αυτό να σε βοηθήσει:
http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#195
--
Theory asserts that although in theory there should be no
difference between theory and practice, in practice there IS
difference between theory and practice.
More information about the Linux-greek-users
mailing list