🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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
#422
Author: Sven Pfeifer
Date: Mon, 18 Sep 1995 16:30
10 lines
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
#425
Author: Thomas E. Guettinger
Date: Tue, 19 Sep 1995 07:45
36 lines
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
#440
Author: Johannes R. Geiss
Date: Tue, 19 Sep 1995 08:07
21 lines
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
#427
Author: Bernd Rothert
Date: Tue, 19 Sep 1995 08:43
27 lines
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
#426
Author: Marco Nissen
Date: Tue, 19 Sep 1995 08:53
28 lines
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
#436
Author: Sven Pfeifer
Date: Tue, 19 Sep 1995 17:32
12 lines
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
#434
Author: Andreas Huennebeck
Date: Tue, 19 Sep 1995 18:07
26 lines
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
#449
Author: Robert Macketanz
Date: Thu, 21 Sep 1995 06:35
33 lines
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
#455
Author: Joerg Koenig
Date: Thu, 21 Sep 1995 08:08
8 lines
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