eure Beitrag



  • Hallo zusammen
    Ich habe ein prog mit VC++6.0 geschrieben , es besteht aus einer Header_Datei: „ Dat.h“ und einer Implemtierungsdatei: Dat.cpp .es funzt einwandfrei. Da ich Anfänger in der OOP bin, möchte euch bitten eure Meinungen bzw. Vorschläge oder was auch immer Kritik dazu sagen und zwar was die Organisation bzw. die Reihenfolge betrifft und der Aufruf der Funktionen usw.
    Das Prog sieht folgendes aus:

    #ifndef Dat_h 
    #define Dat_h Dat_h 
    
    #include<vector> 
    
    class  DATA 
    { 
       private: 
         std::vector <int> m_v1; 
         std::vector <int> m_v2; 
         std::vector<std::vector <int> > m_mat1; 
       public: 
         int readfile();   
         int edit_mat1();   
         int nrand( int a, int e); 
         int edit_v(); 
         int print_v(); 
         int select(); 
         int writefile();   
    };
    

    // Implemtierungsdatei: Dat.cpp

    #include ”Dat.h” 
    #include <iostream> 
    ----- 
    using namespace std; 
    
    //globale Variablen : 
          vector<vector <int> > g_mat1; 
          vector<vector <int> > g_mat2; 
          int  g_var1,g_ var2; 
    
    int savedata(vector<int> v1, vector<double> v2;) 
    
    //Converting from One Arbitrary Type to Another 
    template <class out_type, class in_value> 
    out_type cast_stream(const in_value & t) 
    { 
         stringstream ss; 
         ss << t;                 
         out_type result;       
         ss >> result;           
         return result; 
    } 
    
    int main() 
    { 
       srand( time(0)); 
       DATA  obj; 
       Obj. readfile();   
       return 0; 
    } 
    
    int DATA::readfile()   
    { 
           Datei öffnen 
             ............ 
        ..........    
            do   
        { 
                 // Daten in Vector m_v1, m_v2 und in Matrix  m_mat1      zwischenspeichern 
                   ......... 
                   ......... 
                   int n= cast_stream(< int > (mystr); 
                    ........ 
    
                   edit_mat1();   
                    ......... 
                    ......... 
                   edit_v(); 
                   .......... 
                   ........ 
                   select(); 
                    // hier werden die bearbeiteten klassenvektoren m_v1, m_v2 in globale Matrizen  gespeichert 
                   savedata(m_v1, m_v2); 
    
             }while(!dat.eof()); 
             dat.close(); 
      return 0; 
    } 
    
    int DATA::edit_mat1() 
    { 
       // vektor m_v1 und Matrix m_mat1 bearbeiten 
        ......... 
        ......... 
       print_mat1();   
       writefile();   
       return 0; 
    
    } 
    int DATA::edit_v() 
    {   
       // m_v1 und m_v2 bearbeiten und dann wieder in  m_v1 und m_v2 speichern 
       ......... 
        ......... 
        print_v(); 
       return 0; 
    
    } 
    int DATA::print_v() 
    { 
           // Ausgabe von m_v1 und m_v2 
       ......... 
       ......... 
    
       return 0; 
    } 
    
    int DATA::select() 
    { 
       ......... 
        ......... 
    
      z=nrand( x,y); 
      return 0; 
    } 
     int DATA::nrand( int a, int e) 
    { 
      ..... 
      ...... 
      return r; 
    } 
    int DATA::writefile()   
    {     
       // hier werden die member_Matrix m_mat1 in eine einer Ausgabe_Datei   geschrieben 
        ......... 
        ......... 
     return 0; 
    } 
    int savedata(vector<int> v1, vector<double> v2;) 
    { 
        g_mat1.push_back(v1); 
        g_mat2.push_back(v1); 
       ...... 
       // ausgabe... 
         .... 
       retun 0; 
    }
    

    vielen Dank für jeden tip



  • Hatten wir das nicht erst letztens?



  • ja aber leider wurden die Fragen nicht alle beantwortet



  • Ich würde die main nicht in die Implementierungdatei packen.


Anmelden zum Antworten