Newsgroup: it.comp.programmare.win32
Titolo: compilatore impazzito

Ho creato una classe auto e poi lo implementata e provata:
---------------auto.h --------------
#include <iostream>
class auto{
        public:
                auto();
                int getvel(void);
                int getpos(void);
                bool move(int metri);
                void display(void);
        private:
                int _velocita;
                int _metri;
                const int _max_move;
}
---------------------------------------
-----------auto.C-----------------------
#include "auto.h"
auto::auto(){
        _velocita = 10;
        _metri = 0;
        _max_move = 500;
}
int auto::getvel(void){ return _velocita;}
int auto::getpos(void){ return _metri;}
bool auto::move(int metri){
        if((_metri+metri) > _max_move)
                return false;
        _metri+= metri;
        return true;
}
void auto::display(void){
        std::cout << "La macchina alla velocità di "<<
                  << _velocita
                  << " ha percorso "
                  << _metri
                  << " metri"
                  << std::endl;
}
---------------------------------------------
-----------main.C------------------------
#include "auto.h"
int main(){
        auto seicento;
        seicento.move(100);
        seicento.display();
        return 0;
}
--------------------------------------------
Compilando i file mi da decine e decine di errori, dove sbaglio?
silvio@silviosoft:~/auto_project$ g++ main.C auto.C -o auto
In file included from main.C:1:
auto.h:3: storage class specifier `auto' not allowed after struct or class
auto.h:5: `auto' can only be specified for objects and functions
auto.h:5: ANSI C++ forbids declaration `' with no type
auto.h:5: storage class specified for typename
auto.h:5: parse error before `('
main.C:4: semicolon missing after struct declaration
main.C:4: extraneous `int' ignored
main.C:4: semicolon missing after declaration of `class {anonymous}'
main.C: In function `int main()':
main.C:5: ANSI C++ forbids declaration `seicento' with no type
main.C:6: request for member `move' in `seicento', which is of 
non-aggregate type `int'
main.C:7: request for member `display' in `seicento', which is of 
non-aggregate
type `int'
In file included from auto.C:1:
auto.h:3: storage class specifier `auto' not allowed after struct or class
auto.h:5: `auto' can only be specified for objects and functions
auto.h:5: ANSI C++ forbids declaration `' with no type
auto.h:5: storage class specified for typename
auto.h:5: parse error before `('
auto.C:3: parse error before `auto'
auto.C:5: ANSI C++ forbids declaration `_metri' with no type
auto.C:6: ANSI C++ forbids declaration `_max_move' with no type
auto.C:7: parse error before `}'
auto.C:9: parse error before `('
auto.C:11: parse error before `('
auto.C:13: parse error before `('
auto.C:17: syntax error before `+='
auto.C:21: parse error before `('
-- 
Abruzzo Silvio
studente, 16 anni
goku_...@libero.it
silvi...@aruba.it
^____^

scusate senza farlo a posta ho sbagliato newsgroup


 
auto è una parola riservata, non puoi usarlo come nome di classe, 
variabile etc.
-- 
Valter Minute
min...@inwind.it
 (the reply address of this message is invalid)

 }  <----- Manca il punto e virgola qui (errore comune, ma la maggior parte
delel volte genera errori incomprensibili !!!)

grazie
