Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.sci.electronics > #203902
| Path | csiph.com!feeder.erje.net!2.eu.feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail |
|---|---|
| From | Hans-Peter Diettrich <DrDiettrich1@aol.com> |
| Newsgroups | de.sci.electronics |
| Subject | Re: C++ method pointer? |
| Date | Wed, 09 Mar 2016 20:11:30 +0100 |
| Lines | 47 |
| Message-ID | <dkbar9FrbmbU1@mid.individual.net> (permalink) |
| References | <dkb40lFph51U1@mid.individual.net> <nbpr73$77j$1@news.albasani.net> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=ISO-8859-15; format=flowed |
| Content-Transfer-Encoding | 8bit |
| X-Trace | individual.net NrdktZ1rYoifgsjRYsbNswLejZDpdrgpgcuSRbPtKTnKrTZfTr |
| Cancel-Lock | sha1:fHgU2z52w++oVA2HVZXVGxDd0fk= |
| User-Agent | Thunderbird 2.0.0.21 (Windows/20090302) |
| In-Reply-To | <nbpr73$77j$1@news.albasani.net> |
| Xref | csiph.com de.sci.electronics:203902 |
Show key headers only | View raw
Thorsten Böttcher schrieb:
> Am 09.03.2016 um 18:14 schrieb Hans-Peter Diettrich:
>> Problem: eine Klasse implementiert mehrere (gleichartige) Methoden, von
>> denen eine bestimmte zur Laufzeit aufgerufen werden soll. Leider sind
>> meine C++ Kenntnisse sehr angestaubt, ich komme nicht drauf wie sich das
>> mit einem Methoden-Pointer erledigen läßt :-(
>
> Kann man machen, ist aber unschön. Stichwort Funktoren.
> Um Memberfunktionen aufzurufen brauchst Du den Zeiger auf das Objekt.
Deshalb wollte ich ja die Methode innerhalb des Objekts aufrufen, dann
ist die Instanz ja bereits bekannt (this).
> Wieviel verschiedene Dekoder gibt es denn?
Etwa 10, Tendenz steigend. Zudem hätte ich gerne noch eine Möglichkeit,
die empfangenen Codes über Tabellen in einen einfacheren Datentyp
umzuwandeln, z.B. '0'-'9' für numerische Tasten. Das sollte aber
möglichst ohne komplizierte Programmierung gehen, die meisten Benutzer
haben noch viel weniger Ahnung von C++ als ich ;-)
> Entweder Du baust Dir ein Interface, und erzeugst Dir passende Objekte
> je nachdem was Du brauchst,
Das riecht für mich nach einem Template, und da kenne ich mich auch
nicht (mehr) aus :-(
> oder Du erledigst das einfach mit ner
> if-Abfrage, oder mit einem switch case Block.
>
> begin(IRecv::DecodeNEC);
>
> IRecv::read()
> {
> if (decoder==DecoderNEC)
> return decodeNEC;
> else
> return decodeSony();
> }
Das hat den Nachteil, daß alle angegebenen Decoder ins Programm
eingebunden werden, und das möchte ich vermeiden. Der Linker ist ja
schon so clever, daß er unbenutze Methoden wegläßt, man muß nur noch
vermeiden, daß diese irgendwo in der Bibliothek referenziert werden.
Danke fürs Mitdenken
DoDi
Back to de.sci.electronics | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 18:14 +0100
Re: C++ method pointer? Christian Zietz <newsgroup.1001@chz.xyz> - 2016-03-09 18:24 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 19:43 +0100
Re: C++ method pointer? Christian Zietz <newsgroup.1001@chz.xyz> - 2016-03-09 20:03 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 20:29 +0100
Re: C++ method pointer? Christian Zietz <newsgroup.1001@chz.xyz> - 2016-03-09 20:47 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 19:57 +0100
Re: C++ method pointer? Thorsten Böttcher <thorsten_nospam@gmx.net> - 2016-03-09 19:49 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 20:11 +0100
Re: C++ method pointer? Thorsten Böttcher <thorsten_nospam@gmx.net> - 2016-03-09 20:35 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 22:31 +0100
Re: C++ method pointer? Thorsten Böttcher <thorsten_nospam@gmx.net> - 2016-03-10 06:45 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-10 16:59 +0100
Re: C++ method pointer? Marc Santhoff <m.santhoff@t-online.de> - 2016-03-09 20:47 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-09 22:33 +0100
Re: C++ method pointer? Christian Zietz <newsgroup.1001@chz.xyz> - 2016-03-09 23:11 +0100
Re: C++ method pointer? Marc Santhoff <m.santhoff@t-online.de> - 2016-03-10 01:29 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-11 13:24 +0100
Re: C++ method pointer? Edzard Egberts <ed_09@tantec.de> - 2016-03-10 08:51 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-10 16:33 +0100
Re: C++ method pointer? Heinz Saathoff <newshsaat@arcor.de> - 2016-03-10 09:14 +0100
Re: C++ method pointer? Hans-Peter Diettrich <DrDiettrich1@aol.com> - 2016-03-10 16:42 +0100
Re: C++ method pointer? Edzard Egberts <ed_09@tantec.de> - 2016-03-10 19:12 +0100
Re: C++ method pointer? Edzard Egberts <ed_09@tantec.de> - 2016-03-11 08:04 +0100
Re: C++ method pointer? Heinz Saathoff <newshsaat@arcor.de> - 2016-03-11 09:14 +0100
csiph-web