Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Dziedziczenie konstruktora, C++

Ostatnio zmodyfikowano 2009-07-29 08:58
Autor Wiadomość
steckel
Temat założony przez niniejszego użytkownika
» 2009-07-28 22:49:18
Ehh.. z programistami trudno się dogadać :P Czym to się różni?
P-8875
DejaVu
» 2009-07-28 22:56:37
Argumenty są w funkcjach/metodach. Parametry w szablonach.
P-8876
steckel
Temat założony przez niniejszego użytkownika
» 2009-07-28 23:00:50
I tylko o to chodzi? Fanael, ty mi chyba robisz na złość?
P-8877
lynx
» 2009-07-28 23:02:51
Jeszcze się nie przyzwyczaiłeś do tego? ;P
Często mu się to zdarza.
Ale pomóc potrafi. :)
P-8878
steckel
Temat założony przez niniejszego użytkownika
» 2009-07-28 23:13:06
Można prosić o przykład takiego dziedziczenia konstruktora na 3 poziomy? (cObject, cCharacter, cPlayer)
P-8879
steckel
Temat założony przez niniejszego użytkownika
» 2009-07-29 08:18:16
Chyba zrozumiałem, ale posypała mi się masa błędów w class.cpp:
C/C++
cCharacter::cCharacter( int iMaxHP, int iAttack, int iDefense, int iInjuryMin, int iInjuryMax, string strName, int iPositionX, int iPositionY, string strPathOfFile )
    : cObject( string strName, int iPositionX, int iPositionY, string strPathOfFile )
{ }

1>d:\projekty\inne\diablo\class.cpp(36) : error C2144: syntax error : 'std::string' should be preceded by ')'
1>d:\projekty\inne\diablo\class.cpp(36) : error C2612: trailing 'type' illegal in base/member initializer list
1>d:\projekty\inne\diablo\class.cpp(36) : error C2082: redefinition of formal parameter 'strName'
1>d:\projekty\inne\diablo\class.cpp(36) : error C2062: type 'int' unexpected
1>d:\projekty\inne\diablo\class.cpp(36) : error C2059: syntax error : ')'
1>d:\projekty\inne\diablo\class.cpp(36) : error C2143: syntax error : missing ';' before '{'
C/C++
cPlayer::cPlayer()
    : cCharacter()
{
}

1>d:\projekty\inne\diablo\class.cpp(50) : error C2143: syntax error : missing ';' before ':'
1>d:\projekty\inne\diablo\class.cpp(50) : error C2143: syntax error : missing ';' before ':'
1>d:\projekty\inne\diablo\class.cpp(50) : error C2143: syntax error : missing ';' before '{'
C/C++
cObject::~cObject() {
}

1>d:\projekty\inne\diablo\class.cpp(56) : error C2143: syntax error : missing ';' before '{'
C/C++
cPlayer::~cPlayer() {
}

1>d:\projekty\inne\diablo\class.cpp(62) : error C2352: 'cPlayer::~cPlayer' : illegal call of non-static member function
1>        d:\projekty\inne\diablo\class.hpp(45) : see declaration of 'cPlayer::~cPlayer'
1>d:\projekty\inne\diablo\class.cpp(62) : error C2143: syntax error : missing ';' before '{'
C/C++
cPlayer::cPlayer( int iMaxHP, int iAttack, int iDefense, int iInjuryMin, int iInjuryMax, string strName, int iPositionX, int iPositionY, string strPathOfFile )
    : cCharacter( int iMaxHP, int iAttack, int iDefense, int iInjuryMin, int iInjuryMax, string strName, int iPositionX, int iPositionY, string strPathOfFile )
{
}

1>d:\projekty\inne\diablo\class.cpp(69) : error C2144: syntax error : 'int' should be preceded by ')'
1>d:\projekty\inne\diablo\class.cpp(69) : error C2059: syntax error : ')'
1>d:\projekty\inne\diablo\class.cpp(69) : error C2143: syntax error : missing ';' before '{'
Powtarzają się one w kilku miejscach.
Ten błąd wskazuje na początek class.cpp:

1>d:\projekty\inne\diablo\class.cpp(82) : fatal error C1004: unexpected end-of-file found
W class.hpp nic nie wykryto.
P-8884
steckel
Temat założony przez niniejszego użytkownika
» 2009-07-29 09:23:05
Raczej nie miałem do czynienia z dziedziczeniem konstruktora, bo dopisałem typy zmiennych do parametrów(argumentów) klasy bazowej. Z 'normalnymi' funkcjami nie mam problemów. Trochę to dziwne, ale po poprawieniu tych 2 linijek, pozostałe błędy zniknęły! Dzięki! :)
P-8885
manfred
» 2009-07-27 22:26:36
Derived::Base(), uściślając.
Konstruktor nie jest dziedziczony. Amen.
A, to-to się nazywa klasami pochodnymi.
@down: well, jeśli ma jakieś parametry to zwykle wali się alias na klasę bazową, żeby ich ciągle nie powtarzać... A to o argumenty szło?
P-19097
1 2 « 3 » 4
Poprzednia strona Strona 3 z 4 Następna strona