amiga-news DEUTSCHE VERSION
.
Links| Forums| Comments| Report news
.
Chat| Polls| Newsticker| Archive
.

amiga-news.de Forum > Programmierung > Reaction und C++ [ - Search - New posts - Register - Login - ]

-1- [ - Post reply - ]

2002-06-13, 09:19 h

Flash
Posts: 249
User
Wie kann ich Reaction unter C++ nutzen?(.

Habe leider nur "Anfänger-Status" in der C/C++ Programmierung :glow: .

Immer wenn ich versuche Reaction-Elemente unter C++ zu nutzen bekomme
ich die Meldung das dieses nicht unter C++ geht.



:dance3: Flash :dance3:

[ - Answer - Quote - Direct link - ]

2002-06-13, 10:59 h

Flash
Posts: 249
User
Hier noch die Fehlermeldungen:

Error: "void*" -> "type*": allowed in C mode only.

[ - Answer - Quote - Direct link - ]

2002-06-13, 11:10 h

Solar
Posts: 3680
User
Ich habe zwar Reaction selbst noch nie angefaßt, aber die Fehlermeldung ist recht eindeutig: Es ist in C++ nicht erlaubt, einen void-Pointer "so einfach" in einen anderen Pointer-Typ zu casten.

Schlage in dem C++-Handbuch Deiner Wahl mal "dynamic_cast" nach, das wird wahrscheinlich helfen.

[ - Answer - Quote - Direct link - ]

2002-06-13, 12:01 h

Azrael
Posts: 41
User
Nix dynamic_cast. Der Compiler scheint zu meinen, daß ein impliziter type cast nunmal in C++ nicht erlaubt ist. Wenn Deine Variable type * ist und die Funktion oder sonstwas void * verlangt, musst Du das umcasten, sonst nix. Also z.B.

Type *bla;
void Func(void *)

Der Aufruf Func(bla) ergibt unter C++ natürlich einen Fehler. Der Aufruf Func((void *) bla) klappt dann.

Bye.
--
Dreamworlds Development - http://www.dreamworlds.de

[ - Answer - Quote - Direct link - ]

2002-06-13, 12:24 h

Solar
Posts: 3680
User
Mit dem feinen Unterschied daß (type) void* in C++ "deprecated" ist und dynamic_cast<type> void* vorgezogen werden sollte. Das meinte ich damit.

[ - Answer - Quote - Direct link - ]

2002-06-15, 08:57 h

Flash
Posts: 249
User
:D
Danke Azrael.

Mußte der Funktion nur explizit angeben welchen type* sie zurückgibt.

War in meinem Fall mit ReAction:
Für die Buttons (Gadget *) und die Objektgruppe (Object *).


Nochmals Danke an Alle.:rolleyes:





:bounce: Flash

[ - Answer - Quote - Direct link - ]

2002-06-15, 18:47 h

Azrael
Posts: 41
User
>Original von Solar:
>Mit dem feinen Unterschied daß (type) void* in C++ "deprecated" ist
>und dynamic_cast<type> void* vorgezogen werden sollte. Das meinte
>ich damit.

hmm.... so gut kenne ich mich mit dem dynamic_casr nicht aus. Welche Vorteile hätte das?

Bye, Azrael.

--
Dreamworlds Development - http://www.dreamworlds.de

[ - Answer - Quote - Direct link - ]


-1- [ - Post reply - ]


amiga-news.de Forum > Programmierung > Reaction und C++ [ - Search - New posts - Register - Login - ]


.
Masthead | Privacy policy | Netiquette | Advertising | Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved.
.