C++ problem z public: w klasie (nieprawidłowa składnia)

0

witam

class postac {
public:
    int bron_biala;
    int bron_dystans;
    int wartosc_czarow;
    string nazwa;
    int ID[100];

    postac(string imie, int reczna, int luki, int czary)
    {

        nazwa = imie;
        bron_biala = reczna;
        bron_dystans = luki;
        wartosc_czarow = czary;

    public:
        void item_add(int id)
        {
            for (int i = 0; i < 100; i++)
                if (ID[i] == 0) {
                    for (int a = 1;, a <= waga; a++) {
                        ID[i] = id;
                        i = 101;
                    }
                }

                else

                    i = i;
        }
    }
};

error error expected primary-expression before 'public' wystepuje on w linijce z 2 publicem

Proszę o pomoc

0

Poprawiłem formatowanie za pomocą clang-format. Czy widzisz już błąd? Pytanie na szóstkę: czy widzisz już dlaczego formatowanie kodu ma sens?

0

tu screen nowego kodu

screenshot-20170103182942.png

0

class postac
{


public:
int bron_biala;
int bron_dystans;
int wartosc_czarow;
string nazwa;
int ID[100];


    postac(string imie,int reczna,int luki,int czary)
{



       nazwa=imie;
    bron_biala=reczna;
    bron_dystans=luki;
    wartosc_czarow=czary;



 public:

 void item_add(int item.id){
for(int i=0;i<100;i++){
        if (ID[i]==0){
                for(int a=1;,a<=item.waga;a++){
        ID[i]=id;
                }
        i=101;
        }



else

   i=i;
}
 }

    }
};
0

Konstruktor jest funkcją. Definicja funkcji musi zostać zakończona zanim zaczniesz definiować kolejną. Brakuje u Ciebie } po końcu definicji konstruktora. Swoją drogą, puść to przez clang-format, bo to strasznie nieczytelne.

0
class postac
{


public:
int bron_biala;
int bron_dystans;
int wartosc_czarow;
string nazwa;
int ID[100];


    postac(string imie,int reczna,int luki,int czary)
{



       nazwa=imie;
    bron_biala=reczna;
    bron_dystans=luki;
    wartosc_czarow=czary;


}



 public:

 void item_add(int item.id){
for(int i=0;i<100;i++){
        if (ID[i]==0){
                for(int a=1;,a<=item.waga;a++){
        ID[i]=id;
                }
        i=101;
        }



else

   i=i;
}
 }


};

zakonczylem to klamerka i co dalej?

0

I dalej musisz dzielnie walczyć z kolejnym błędem, który popełniłeś, chyba, że się kompiluje i działa

0

Dobra dziala KQ wielkie dzieki jestej moicm zbawca <3
to takie pytanie na uboczu
czy jak mam klase przedmiot i kazdy przedmiot ma id i swoja wage itp to czy petla wpisujaca id do ekwipunku moze sama sobie wziac dane na temat item.weight itp i jak to zapisywac zebym wprowadzal tylko funkcji item_add(ID) i po tym id juz reszte sobie znalazł

0
 public:

 void item_add(int item.ID){
for(int i=0;i<100;i++){
        if (ID[i]==0){
                for(int a=1;,a<=item.waga;a++){
        ID[i]=id;
                }
        i=101;
        }

Dobra dziala KQ wielkie dzieki jestej moicm zbawca <3
to takie pytanie na uboczu
czy jak mam klase przedmiot i kazdy przedmiot ma id i swoja wage itp to czy petla wpisujaca id do ekwipunku moze sama sobie wziac dane na temat item.weight itp i jak to zapisywac zebym wprowadzal tylko funkcji item_add(ID) i po tym id juz reszte sobie znalazł

0

Opisujesz tu prostą bazę danych. Jak najbardziej możesz to zrealizować. Widząc Twój poziom sugeruję jakiś prosty sposób, np. tablicę (wtedy id by było indeksem tablicy) lub mapą (std::map).

0

class postac
{


public:
int bron_biala;
int bron_dystans;
int wartosc_czarow;
string nazwa;
int eq[100];


    postac(string imie,int reczna,int luki,int czary)
{



       nazwa=imie;
    bron_biala=reczna;
    bron_dystans=luki;
    wartosc_czarow=czary;


}



 public:

 void item_add(int item.ID){
for(int i=0;i<100;i++){
        if (eq[i]==0){
                for(int a=1;,a<=item.waga;a++){
        eq[i]=id;
                }
        i=101;
        }



else

   i=i;
}
 }

 void item_back(int item.ID)
 {
     for(int i=0;i<100;i++){
        while (ID[i]==item.ID)
        for(int k=0;k<item.waga;k)
        ID[i+n]=0
        else
        i=i;

     }
 }


};

te item id odnosza sie do klasy wyzej

class item{;
public:
    int ID;
    char cel;
    int waga;
    int cena;
    int atak;
    int defensywa;
    int obrona;
    item(int id, char why,int weight, int a=0, int ob=0,int def=0, int p=0){


ID=id;
cel=why;
waga=weight;
atak=a;
obrona=ob;
defensywa=def;
cena=p;
    }
    };





na pewno rozumiesz o co mi chodzi

1 użytkowników online, w tym zalogowanych: 0, gości: 1