Gönderen Konu: C++ Kalıtım Hatası  (Okunma sayısı 2414 defa)

Çevrimdışı WhiteClick

  • Üye
  • İleti: 18
    • Profili Görüntüle
C++ Kalıtım Hatası
« : 13 Şub 2013, 12:59:24 Çrş »
Kod: [Seç]
#include<iostream>
#include <cstdlib>
#include<cstring>

using namespace std;

class motorlutasit
{     
      public:
             
             int yolcu_sayisi;
             int km;
             int hiz;
             int kargo_mik;
             char yakit_turu; 
             
             motorlutasit(int c,int d,int e,char f,int g){
                       
                       cout<<"::Motorlu Tasit Calisti::\n";
                       
                       hiz=c;
                       kargo_mik=d;
                       km=e;
                       yakit_turu=f;
                       yolcu_sayisi=g;

             cout<<"Yolcu Sayisi:"<<yolcu_sayisi<<endl<<"Km:"<<km<<endl<<"Hiz:"<<hiz<<endl
                 <<"Kargo Mik:"<<kargo_mik<<endl<<"Yakit Turu:"<<yakit_turu<<endl;
           
             }               
           
};

class kara_tasiti :virtual public motorlutasit
{
      public:
             kara_tasiti(int a,char b,int c,int d,int e,char f,int g):motorlutasit(c,d,e,f,g)
             {   
                         cout<<":Kara Ozelligi Devrede:";
                         tekerlek_sayisi=a;
                         ozel_yol=b;
             };
             
            void virtual goster()
             {
                     cout<<endl<<"Tekerlek Sayisi:"<<tekerlek_sayisi<<endl<<"Ozel Yol:"<<ozel_yol;
             }
             
            //private:
                     int tekerlek_sayisi;
                     char ozel_yol;

};

class su_tasiti :virtual public motorlutasit
{
      public:
             su_tasiti(int a,int b,int c,int d,int e,char f,int g):motorlutasit(c,d,e,f,g)
             {
                       cout<<"::Su Ozelligi Devrede::";   
                       
                       govde_uzunlugu=a;
                       yuksekligi=b;
                       
             };
             
           void virtual goster()
             {
                     
                     cout<<endl<<"Govde Uzunlugu:"<<govde_uzunlugu<<endl<<"Yuksekligi:"<<yuksekligi;

             }
             
      //private:
              int govde_uzunlugu;
              int yuksekligi;

};

class hava_tasiti :virtual public  motorlutasit
{
      public:
            hava_tasiti(int a,char *b,char *b1,int c,int d,int e,char f,int g):motorlutasit(c,d,e,f,g)
             {
                       cout<<"::Hava Ozelligi Devrede::";   
                       
                       max_seyir_yuksekligi=a;
                       strcpy(motor_tipi,b);
                       strcpy(yakit_tipi,b1);
                       
             };
           
           
           
            void virtual goster()
             {
                     
                     cout<<endl<<"Max Seyir Yuksekligi:"<<max_seyir_yuksekligi<<endl
                     <<"Motor Tipi:"<<motor_tipi<<endl<<"Yakit Tipi:"<<yakit_tipi;
             }
     
      //private:
              int max_seyir_yuksekligi;
              char motor_tipi[50];
              char yakit_tipi[50];

};

class amfibi: public kara_tasiti, public su_tasiti
{             
              public:
             
             amfibi(int a,char b,int c,int d,int e,char f,int g) : kara_tasiti(a,b,c,d,e,f,g){cout<<"Bu bir amfibik turu tasittir.";};
             amfibi(int a,int b,int c,int d,int e,char f,int g) : su_tasiti  (a,b,c,d,e,f,g){cout<<"Bu bir amfibik turu tasittir.";};
             
             
                     
             
};

class deniz_ucagi:public  su_tasiti, public  hava_tasiti
{
      public:
             int kanat_acikligi;
           
           deniz_ucagi(int a,char *b,char *b1,int c,int d,int e,char f,int g,int h):hava_tasiti(a,*b,*b1,c, d, e, f, g)
           {kanat_acikligi=h;
           cout<<"Bu bir deniz ucagu turu tasittir.";
           cout<<endl<<"Kanat Acikligi:"<<kanat_acikligi<<endl;
           }
           deniz_ucagi(int a,int b,int c,int d,int e,char f,int g,int h):su_tasiti( a, b, c, d, e, f, g)
           {kanat_acikligi=h;
           cout<<"Bu bir deniz ucagu turu tasittir.";
           cout<<endl<<"Kanat Acikligi:"<<kanat_acikligi<<endl;
           }           
     
                     
};

int main()
{
     kara_tasiti ob(4,'E',260,1500,450,'D',5);
     
   
    cout<<endl;
    ob.goster();
   
   
   
    cin.get();
    return 0;
}

Bu kalıtım örneğinde hatam tam olarak nerede?

Saygılar