Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » Rätselecke » 34. Virtualrästel for Beginners only

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
09.07.2003, 17:54 Uhr
virtual
Sexiest Bit alive
(Operator)


Bitte keine Beefies.
1. Warum compilert dieser Code nicht?
2. Warum kommt der Fehler erst in der letzten Zeile und nicht bereits vorher?

C++:
#include<iostream>

class X
{
public:
    X() { }
    const char* toChars() const { return "I am an X"; }
};

int main()
{
    X x();

    std::cout<<x.toChars()<<std::endl;
}


--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.07.2003, 21:37 Uhr
Pablo
Supertux
(Operator)


Das weißt nur Gott, gcc, du und die Beefies
Naja, blödes Kommentar, aber keiner will antworten
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 09.07.2003 um 21:39 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
09.07.2003, 22:01 Uhr
ao

(Operator)


Ein Beispiel aus der Immer-wieder-gern-gemachte-Fehler-Ecke, nicht wahr? Ich habs aber auch erst gesehen, nachdem ichs kompiliert hatte.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.07.2003, 22:02 Uhr
virtual
Sexiest Bit alive
(Operator)


Schade. Ist Euch wohl zu langweilig? Oder ist die Frage wirklich zu schwer?
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
09.07.2003, 23:35 Uhr
Pablo
Supertux
(Operator)


Mich interessiert nur zu wissen, was der g++ mit non-aggregate type meint.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
09.07.2003, 23:46 Uhr
~0xdeadbeef
Gast


Ich vermute, dass er die Zeile

C++:
X x();


Als Deklaration einer Funktion ansieht, aber sicher bin ich mir da nicht.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
09.07.2003, 23:52 Uhr
Pablo
Supertux
(Operator)


Nein, das hat nicht damit zu tun.

Code:
X x();


heißt (wenn ich mich nicht irre) deklariere x vom Typ X und führe gleich auf x den Standardkonstruktor aus.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
10.07.2003, 00:04 Uhr
~0xdeadbeef
Gast


Naja, wenn du die Zeile

C++:
X x();


durch

C++:
X x;


ersetzt, läuft es. Außerdem würde es erklären, warum der Compiler sich beschwert, dass x ein non-aggregate type ist. Mir scheint es die plausibelste Erklärung zu sein, auch wenn ich gestehen muss, dass ich so firm im Standard nicht bin.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
10.07.2003, 00:21 Uhr
Pablo
Supertux
(Operator)


Tatsächlich, ohne X x() geht's?

Aber wieso? Ist X x() nicht der Aurfuf des Standardkonstruktors?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
10.07.2003, 00:33 Uhr
~0xdeadbeef
Gast


Scheinbar nicht. Und das macht auch Sinn - ich meine, stell dir das mal als globale Deklaration vor:

C++:
X x();

int main() {
    std::cout << x.toChars() << std::endl;
}


dann sieht die Sache gleich deutlich weniger verwirrend aus.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ Rätselecke ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: