Thread View: de.comp.lang.c++
9 messages
9 total messages
Started by Sven Pfeifer
Mon, 18 Sep 1995 16:30
wer kann mir den Operator ~ erklären
Author: Sven Pfeifer
Date: Mon, 18 Sep 1995 16:30
Date: Mon, 18 Sep 1995 16:30
10 lines
526 bytes
526 bytes
Hi, wer kann mir den Operator ~ erklären? Aus der Online-Hilfe werde ich nicht schlau! bye... Sven Mausnet Sven Pfeifer@bn Internet Sven.Pfeifer@bonn.netsurf.de
Re: wer kann mir den Operator ~ erklären
Author: Thomas E. Guettinger
Date: Tue, 19 Sep 1995 07:45
Date: Tue, 19 Sep 1995 07:45
36 lines
1941 bytes
1941 bytes
Hi Sven
Also, ~ ist kein Operator.
Kein Problem. Ich nehme an, Du kennst den Unterschied zwischen einer
Klassendefinition und einem Objekt in C++. Du hast also eine Klasse,
die neben ein paar FUnktionen auch noch Variabeln enthaelt.
class Irgendwas
{
undsoweiter
};
Nun generierst Du ein Objekt der Klasse:
class Irgendwas Objekt;
Vielleicht moechtest Du die Variablen in deinem Objekt initialisiseren,
das tust Du im sogenannten Konstruktor, den Du in Deine Klassendefinition
Irgendwas implementierst:
Irgendwas();
Vielleicht moechtest Du ja auch was tun, wenn Dein Objekt geloescht wird ?
Dann brauchst Du den Destruktor
~Irgenwas();
Und da haben wir Deine Tilde schon, sie gehoert zum Namen des Destruktors.
Mehr ueber Konstruktoren etc in
Stanley B. Lippmann
C++: Einfuehrung und Leitfaden
Addison Wesley, 2. erw. Auflage, 1991.
Schoenen Gruss,
Thomas
-------------------------------------------------------------------
| Thomas E. Guettinger Tf: ++41 1 632 42 79 |
| Dipl. Chem. Eng. ETH Fax: ++41 1 632 12 11 |
| Automatic Control Institute E-Mail (preferred): |
| ETH Zentrum, ETL I 26 guetti@aut.ee.ethz.ch |
| CH-8092 Zuerich, Switzerland |
-------------------------------------------------------------------
Re: wer kann mir den Operator ~ erklären
Author: Johannes R. Geiss
Date: Tue, 19 Sep 1995 08:07
Date: Tue, 19 Sep 1995 08:07
21 lines
1198 bytes
1198 bytes
Sven Pfeifer (Sven.Pfeifer@bonn.netsurf.de) wrote: > wer kann mir den Operator ~ erklären? Aus der Online-Hilfe werde ich > nicht schlau! Der ~ Operator ist ein 1er Komplement. Einfacher ausgedrueckt ein NOT. D.h. alle Bits werden invertiert. Beispiel: Wenn a = 100110 (binaer) ist, dann ist ~a = 011001 (binaer). Das ist alles, was mir auf die Schnelle einfaellt. Ich hoffe das half weiter. Johannes rw-rw-rw-: the file protection of the beast. -- =======================================//================================ Johannes R. Geiss, // geiss@apd.abg.sub.org Dipl.-Inform. (FH) \\ // geiss@informatik.fh-augsburg.de ===================================\X/===================================
Re: wer kann mir den Operator ~ erklären
Author: Bernd Rothert
Date: Tue, 19 Sep 1995 08:43
Date: Tue, 19 Sep 1995 08:43
27 lines
1177 bytes
1177 bytes
In article <43lse7$2mc@elna.ethz.ch>,
"Thomas E. Guettinger" <guetti@aut.ee.ethz.ch> wrote:
>Also, ~ ist kein Operator.
Doch - es ist einer!
Der Tilde-Operator "~" ist fuer Integer das Einerkomplement:
Alle Bits werden invertiert. Wenn man Eins addiert, erhaelt man das
Zweierkomplement, das auf unseren Rechnern das Vorzeichen kippt:
(~12)+1 == -12
In C++ ist die Tilde gleichzeitig das erste Namenszeichen jedes Destruktors.
Der Tilde-Operator kann auch fuer eigene Klassen definiert werden:
#include <iostream.h>
struct SEIN {
const char* operator~ () { return "NichtSein"; }
};
int main()
{
cout << ~123 << endl << "Sein oder " << ~SEIN() << endl;
return 0;
}
Gruss,
Bernd
Re: wer kann mir den Operator ~ erklären
Author: Marco Nissen
Date: Tue, 19 Sep 1995 08:53
Date: Tue, 19 Sep 1995 08:53
28 lines
1021 bytes
1021 bytes
Sven Pfeifer (Sven.Pfeifer@bonn.netsurf.de) wrote this:
: wer kann mir den Operator ~ erklären? Aus der Online-Hilfe werde ich
: nicht schlau!
Dies ist ein Destruktor-'Zeichen'
Beispiel Klasse test:
class test {
int a,b,c,d,e;
public:
test(int x) { // wird beim Erzeugen eines Objekts
// der Klasse aufgerufen
}
~test() { // wird beim Zerstoeren aufgerufen
}
};
: bye...
: Sven
: Mausnet Sven Pfeifer@bn
: Internet Sven.Pfeifer@bonn.netsurf.de
--
Marco Nissen [http://www.mpi-sb.mpg.de/~marco]
*this posting was not sponsered by microsoft*
Re: wer kann mir den Operator ~ erklären
Author: Sven Pfeifer
Date: Tue, 19 Sep 1995 17:32
Date: Tue, 19 Sep 1995 17:32
12 lines
685 bytes
685 bytes
manis@coli.uni-sb.de (Marco Nissen) wrote: >Dies ist ein Destruktor-'Zeichen' ich meinte nicht das Destructor Zeichen sondern den Operator ~. Wurde mir aber schon erklärt. bye... Sven Mausnet Sven Pfeifer@bn Internet Sven.Pfeifer@bonn.netsurf.de
Re: wer kann mir den Operator ~ erklären
Author: Andreas Huennebeck
Date: Tue, 19 Sep 1995 18:07
Date: Tue, 19 Sep 1995 18:07
26 lines
1420 bytes
1420 bytes
In article <43k3im$qun@bnc.net>, Sven.Pfeifer@bonn.netsurf.de (Sven Pfeifer) writes:
> wer kann mir den Operator ~ erklären? Aus der Online-Hilfe werde ich
> nicht schlau!
Hallo Sven,
der Einserkomplementoperator ~ vertauscht alle Bits eines Integerwertes
(unsigned char, int, long). Alle Bits, die 1 waren, sind dann 0, und
umgekehrt; z.B.
unsigned int i = 0x0000ffff; /* 32 Bit maschine */
unsigned int k = ~i; /* d.h. k = 0xffff0000 */
Siehe auch "Programmieren in C" zweite Ausgabe ANSI-C von Kernighan/Ritchie
auf den Seiten 48 und 198.
Tschau
Andreas
---------------------------------------------------------------------
| /\
/ \ ^ /\/ \ _ Andreas Huennebeck
/ \ / \/\ / \/ \ Bruker Analytische Messtechnik GmbH
/ \ \ / \ email: ah@bruker.de
/ \ / \
Kletterer und Natur gemeinsam am Seil: keine weiteren Felssperrungen!
----------------------------------------------------------------------
Re: wer kann mir den Operator ~ erklären
Author: Robert Macketanz
Date: Thu, 21 Sep 1995 06:35
Date: Thu, 21 Sep 1995 06:35
33 lines
1322 bytes
1322 bytes
In article <43k3im$qun@bnc.net> Sven.Pfeifer@bonn.netsurf.de (Sven Pfeifer) writes:
Hi,
wer kann mir den Operator ~ erklären? Aus der Online-Hilfe werde ich
nicht schlau!
Ich.
(soll ich ...?)
OK.
Der `~'-Operator bewirkt ein Bitweises 'Nicht', d.h. er dreht alle Bits seines
Argumentes um (der `~'-Operator ist ein unaerer Operator, d.h. er erwartet nur
ein Argument.), ein Beispiel: (8 Bit, sonst wirds zu schlimm):
int a = 5; /* Bit-Repraesentation : 10100000 */
int b = ~a; /* Bit-Repraesentation : 01011111 */
Geht natuerlich genau so mit groesseren Worten.
Noch Fragen ? (ich hoffe, dass ich nicht Wortlaut deiner Online-Hilfe zu
genau getroffen habe....)
bye...
Sven
Servus
Robert.
--
--
macketan@informatik.tu-muenchen.de
Robert.Macketanz@mchh.siemens.de
.signature: permission denied.
Re: wer kann mir den Operator ~ erklären
Author: Joerg Koenig
Date: Thu, 21 Sep 1995 08:08
Date: Thu, 21 Sep 1995 08:08
8 lines
675 bytes
675 bytes
In article <amigavisions.05yx@apd.abg.sub.org>, amigavisions@apd.abg.sub.org (Johannes R. Geiss) says: > rw-rw-rw-: the file protection of the beast. Mit diesen Rechten wird dem Beast sicherlich bald der Garaus gemacht werde ;) Joerg
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads