🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #1771

Re: Private Datenstrukturen

#1771
From: Harald Wellmann
Date: Wed, 06 Mar 1996 08:15
63 lines
2046 bytes
In article <64JgNVyTpZB@nana.franken.de> wolfgang@nana.franken.de (Wolfgang Thomas) writes:

   1.) Wenn Klassen zur internen Verarbeitung Strukturen benutzen, dann
       sollten diese ja den anderen Klassen nicht bekannt gemacht werden.
       Also habe ich diese Definitionen in den Private-Teil der Klassen-
       deklaration gesteckt:

       class test
       {
       private:

	  struct A
	  {
	     int a;
	     int b;
	  };

	  struct B
	  {
	     struct A a;
	     int      c;
	  };
	  ...
       };

       Dies fuehrt jedoch zu der Fehlermeldung: "access to private member
       test::A is not allowed".
       Warum ist das verschachtelte Definieren von Datenstrukture nicht
       erlaubt?

Funktioniert bei mir mit g++ oder CC auf HP-PA einwandfrei.


   2.) Beim probieren mit Template-Klassen bin ich auf folgende Fehlermeldung
       gestossen:

       template <class A>
       class test
       {
       public:
	  int test (void);
       };

       template <class A>
       int test::test (void)
       {
	  return 1;
       }

Die template Parameter müssen vor dem :: nochmal auftauchen, also z.B.


       template <class A>
       int test<A>::method ()
       {
	  return 1;
       }

Außerdem: Wenn deine Klasse "test" heißt, dann ist eine Methode namens "test"
ein Konstruktor und hat somit keinen Return-Typ.

Für eine leere Parameterliste schreibt man in C++ einfach () statt (void) in
ANSI C.
Technical Details
Message-ID: <pvcivgiwsbm.fsf@hln56.pki-nbg.philips.de>
Path: arc1-ca.pugleaf.net!pki-nbg.philips.de!usenet
References: <64JgNVyTpZB@nana.franken.de>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!pki-nbg.philips.de!usenet
From: ln_hwe@hln56.pki-nbg.philips.de (Harald Wellmann)
Newsgroups: de.comp.lang.c++
Subject: Re: Private Datenstrukturen
Date: 06 Mar 1996 09:15:25 +0100
Organization: Lucent Technologies
Sender: ln_hwe@hln56.pki-nbg.philips.de
Message-ID: <pvcivgiwsbm.fsf@hln56.pki-nbg.philips.de>
References: <64JgNVyTpZB@nana.franken.de>
Reply-To: pla_hwe@pki-nbg.philips.de
NNTP-Posting-Host: hln56.pki-nbg.philips.de
In-reply-to: wolfgang@nana.franken.de's message of 05 Mar 1996 20:34:00 +0200
X-Newsreader: Gnus v5.1