Hallo,
ich habe habe hier eine Klasse welche soweit funktioniert.. jedoch hat sie einen Makel, die private-Sektion befindet sich über der public-Sektion.. soviel ich weiß entspricht dass nicht der C++-Konvention, oder? Daher meine Frage, wie funktioniert meine Klasse auch, wenn ich die beiden Sektionenen vertausche.. ich denke mal, es liegt daran dass etwas nicht deklariert wurde.. der Compiler gibt mir unglaublich viel Fehlermeldungen aus...
Hier meine Klasse:
Alles anzeigen
ich habe habe hier eine Klasse welche soweit funktioniert.. jedoch hat sie einen Makel, die private-Sektion befindet sich über der public-Sektion.. soviel ich weiß entspricht dass nicht der C++-Konvention, oder? Daher meine Frage, wie funktioniert meine Klasse auch, wenn ich die beiden Sektionenen vertausche.. ich denke mal, es liegt daran dass etwas nicht deklariert wurde.. der Compiler gibt mir unglaublich viel Fehlermeldungen aus...
Hier meine Klasse:
Quellcode
- //Includeguard ASCIIPICTURE//
- #if !defined(ASCIIPICTURE_H)
- #define ASCIIPICTURE_H
- #include <vector>
- #include <string>
- #include <istream>
- #include <ostream>
- ///////////////////////////
- class AsciiPicture
- {
- private:
- typedef std::vector<std::string> linesvector;
- linesvector lines;
- public:
- AsciiPicture(); //DefaultKonstruktor
- //Typedefs für Linesvector///////////////////////////////////
- typedef linesvector::size_type size_type; //wie unsigned int
- typedef linesvector::iterator iter;
- typedef linesvector::const_iterator const_iter;
- ////////////////////////////////////////////////////////////
- //Inlinefunktionen//////////////////////////////////////////
- //Zeile hinzufügen
- void add_line(const std::string& text);
- //Zeile an bestimmter Postion hinzufügen
- void add_line(const std::string& text, size_type pos);
- //Zeile an bestimmter Position löschen
- void delete_line (size_type pos);
- //Bestimmte Zeile zurückgeben
- std::string& get_line(size_type pos){
- return lines.at(pos);
- }
- //Bestimmen der maximalen Spaltenbreite
- size_type get_column ()const{
- std::string::size_type max=0;
- linesvector::const_iterator beginline=lines.begin();
- linesvector::const_iterator endline=lines.end();
- while(beginline!=endline) {
- if (max < (*beginline).size()){
- max=(*beginline).size();
- }
- ++beginline;
- }
- return max;
- }
- //Ermitteln der Anzahl der Zeilen
- size_type get_row()const{return lines.size();}
- ////////////////////////////////////////////////////////////////////
- //Iteratoren und Const-Iteratoren für Anfang und Ende im LinesVector lines//
- iter begin(){return lines.begin();}
- iter end(){return lines.end();}
- const_iter begin() const{return lines.begin();}
- const_iter end() const{return lines.end();}
- ///////////////////////////////////////////////////////////////////////////
- };
- #endif
Forza Italia!!!!!!