Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Praktische Informatik » C++ Einführung » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Seiten (4): [1] 2 3 nächste » ... letzte » Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen C++ Einführung
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
progger
unregistriert
C++ Einführung Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo alle zusammen .

Ich wollte mal jetzt erstmal hier im forum fragen wo genau jetzt die Fehler in meinem header file liegen ?

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:

#ifndef CTEAM_H_
#define CTEAM_H_
#include <string>
#include <iostream>
using namespace.std;


class CTeam{

private:
	string m_teamName;
	unsigned int m_winsTotal = 0;
	unsigned int m_equalTotal = 0;
	unsigned int m_goalsScoredTotal = 0;
	unsigned int m_goalsReceivedTotal = 0;

public:

	CTeam::CTeam( string name = "NoName");
	string getName();
	void addResult( unsigned int goalsScored, unsigned int goalsReceived);
    unsigned const int getTotalPoints();

    friend ostream& operator (ostream& out , CTeam::CTeam const& rop);
    bool operator (CTeam::CTeam const& rop);








};






Fehler
Description Resource Path Location Type
Type 'string' could not be resolved CTeam.h /CTeam line 18 Semantic Error

Ich habe das string ja includiert .

Warum wird trotzdem ein fehler angezeigt?

progger hat diese Bilder (verkleinerte Versionen) angehängt:
c.png d.png

28.02.2016 01:41
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
#ifndef CTEAM_H_
#define CTEAM_H_
#include <string>
#include <iostream>
using namespace std; //kein Punkt


class CTeam{

private:
	string m_teamName;
	unsigned int m_winsTotal = 0;
	unsigned int m_equalTotal = 0;
	unsigned int m_goalsScoredTotal = 0;
	unsigned int m_goalsReceivedTotal = 0;

public:

	/*CTeam::*/CTeam( string name = "NoName"); //kein SCope Operator innerhalb der Klasse
	string getName();
	void addResult( unsigned int goalsScored, unsigned int goalsReceived);
    unsigned const int getTotalPoints();

    friend ostream& operator >>(ostream& out , CTeam const& rop); //operator angeben, hier brauchst du auch kein ::
//    bool operator (CTeam const& rop); //welchen operator willst du überladen?

};
#endif //das ifndef musst du wieder schließen


__________________
Syntax Highlighting fürs Board (Link)
28.02.2016 05:58 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
#ifndef CTEAM_H_
#define CTEAM_H_
#include <string>
#include <iostream>
using namespace std;


class CTeam{

private:
	string m_teamName;
	unsigned int m_winsTotal = 0;
	unsigned int m_equalTotal = 0;
	unsigned int m_goalsScoredTotal = 0;
	unsigned int m_goalsReceivedTotal = 0;

public:

	/*CTeam::*/CTeam( string name = "NoName");
	string getName();
	void addResult( unsigned int goalsScored, unsigned int goalsReceived);
    unsigned const int getTotalPoints();

    friend ostream& operator >> (ostream& out , CTeam const& rop);
    bool operator << (CTeam const& rop);








};




welchen operator willst du überladen? Das rop . Daher habe ich das grösser Zeichen umgedreht verwirrt

Ich habe mal versucht den Konstruktor zu implementieren ,habe allerdings probleme .

Wie soll ich denn den Konstruktor genau implementieren ?

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
/*
 * CTeam.cpp
 *
 *  Created on: 28.02.2016
 *      Author: VAIO
 */
#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam( string name = "NoName"){

	m_name = name;
}




Es steht nicht genaues dabei verwirrt
28.02.2016 10:49
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Existiert die Variable m_name? Bei deinem letzten Beitrag hieß sie m_teamName.

__________________
Syntax Highlighting fürs Board (Link)
28.02.2016 10:53 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
Es wird ein error für teamName angezeigt ?
Muss ich das irgendwo im Header definieren?
Description	Resource	Path	Location	Type
Symbol 'teamName' could not be resolved	CTeam.cpp	/CTeam	line 15	Semantic Error

#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam( string name = "NoName"){

	m_teamName = teamName;
}

string CTeam::getName(){

	return m_teamName;
}




Hier wird mir im Header fehler angezeigt ? Warum

/*CTeam::*/CTeam( string name = "NoName");
Description Resource Path Location Type
after previous specification in 'CTeam::CTeam(std::string)' [-fpermissive] CTeam.h /CTeam line 26 C/C++ Problem
28.02.2016 11:01
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Im Header darfst du keine Defalut Werte eintragen, wenn ich es richtig in Erinnerung habe. Nur in der cpp Datei.
Die Variable teamName in Zeile 14 wurde nicht definiert.

__________________
Syntax Highlighting fürs Board (Link)
28.02.2016 16:54 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Soll ich einfach int teamName;


Im cpp erstellen ?
28.02.2016 17:20
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

CTeam::CTeam( string name = "NoName"){
m_teamName = teamName;
}

Fällt dir da was auf?
Entscheide dich für einen Namen, dann ist alles in Ordnung.

__________________
Syntax Highlighting fürs Board (Link)
28.02.2016 18:16 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Leider wird mir immer noch ein Fehler angezeigt

Description Resource Path Location Type
default argument given for parameter 1 of 'CTeam::CTeam(std::string)' [-fpermissive] CTeam.cpp /CTeam line 13 C/C++ Problem

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam( string name = "NoName"){ diese Zeile Fehlermeldung

	m_teamName = name;
}

string CTeam::getName(){

	return m_teamName;
}



geschockt
28.02.2016 19:09
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe mal die addResult Methode ein wenig programmiert :

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:

#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam( string name = "NoName"){

	m_teamName = name;
}

string CTeam::getName(){

	return m_teamName;
}

    unsigned int m_goalsScoredTotal = 0;
	unsigned int m_goalsReceivedTotal = 0;
	unsigned int m_winsTotal = 0;
	unsigned int m_equalTotal = 0;
	unsigned int m_lostTotal = 0;

void CTeam::addResult( unsigned int goalsScored, unsigned int goalsReceived){
	if( goalsScored > goalsReceived){


		m_winsTotal++;


	}

	if( goalsReceived> goalsScored){


		m_lostTotal++;


		}
	else{

		m_equalTotal++;
	}


}



Die übergebenen Parameterwerte werden außerdem im jeweiligen Attribut für die Gesamtzahl der eigenen Tore bzw. der Gegentore aufsummiert.

Was mit dieser Aufgabe genau gemeint ist verstehe ich nicht großes Grinsen

Was muss ich da genau machen ?
28.02.2016 19:35
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich bin mittlerweile ein wenig weiter gekommen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:

#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam( string name = "NoName"){

    m_teamName = name;
}

string CTeam::getName(){

    return m_teamName;
}

    unsigned int m_goalsScoredTotal = 0;
    unsigned int m_goalsReceivedTotal = 0;
    unsigned int m_winsTotal = 0;
    unsigned int m_equalTotal = 0;
    unsigned int m_lostTotal = 0;

void CTeam::addResult( unsigned int goalsScored, unsigned int goalsReceived){
    if( goalsScored > goalsReceived){


        m_winsTotal++;


    }

    if( goalsReceived> goalsScored){


        m_lostTotal++;


        }
    if( goalsReceived == goalsScored){
           m_equalTotal++;

    }

m_goalsScoredTotal += goalsScored;
m_goalsReceivedTotal+= goalsReceived;

 };

 unsigned const CTeam:: getTotalPoints(){
	  return  m_winsTotal*3+m_equalTotal*1;


};

 bool CTeam::operator << (CTeam const& rop){

	 cout<<"CTeam@" << "m_winsTotal"<< "Spiele gewonnen  " << " , " <<  "m_equalTotal" << " Spiele unentschieden"<< endl;

 };








Weiss jemand aber wie ich die Ausgabe mithilfe des operators machen kann ?

Weil ich glaube mein Ansatz stimmt nicht so ganz großes Grinsen
03.03.2016 12:08
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
#ifndef CTEAM_H_
#define CTEAM_H_
#include <string>
#include <iostream>
using namespace std;

class CTeam{

private:
	string m_teamName;
	unsigned int m_winsTotal;
	unsigned int m_equalTotal;
	unsigned int m_lostTotal;
	unsigned int m_goalsScoredTotal;
	unsigned int m_goalsReceivedTotal;

public:
	CTeam(string name);
	string getName();
	void addResult( unsigned int goalsScored, unsigned int goalsReceived);
    unsigned const int getTotalPoints();

    friend ostream& operator << (ostream& out, const CTeam &rop);
    //bool operator < (const CTeam &rop);
};
#endif


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam(string name = "NoName") {
    m_teamName = name;
	m_goalsScoredTotal = 0;
	m_goalsReceivedTotal = 0;
	m_winsTotal = 0;
	m_equalTotal = 0;
	m_lostTotal = 0;
}

string CTeam::getName() {
    return m_teamName;
}


void CTeam::addResult(unsigned int goalsScored, unsigned int goalsReceived){
    if (goalsScored > goalsReceived) {
        m_winsTotal++;
    }
    if (goalsReceived > goalsScored) {
        m_lostTotal++;
    }
    if (goalsReceived == goalsScored) {
           m_equalTotal++;
    }
	m_goalsScoredTotal += goalsScored;
	m_goalsReceivedTotal+= goalsReceived;
 };

unsigned const CTeam:: getTotalPoints(){
	  return  m_winsTotal*3 + m_equalTotal*1;
};

ostream& operator << (ostream &out, const CTeam &rop) {
	 out<<"CTeam@" << rop.m_winsTotal<< "Spiele gewonnen  " << " , " <<  rop.m_equalTotal << " Spiele unentschieden"<< endl;
};


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
#include <iostream>
#include "CTeam.h"

using namespace std;

int main() {
	CTeam team1("team 1");
	team1.addResult(3,2);
	cout << team1;
}


__________________
Syntax Highlighting fürs Board (Link)
04.03.2016 08:55 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Was hast du denn genau bei der Main da gemacht ?
04.03.2016 09:00
eulerscheZahl eulerscheZahl ist männlich
Foren Gott


Dabei seit: 04.01.2013
Beiträge: 2.859

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ein Team angelegt, es spielen lassen und dann ausgegeben.
Einfach nur um die Funktionalität zu testen.

__________________
Syntax Highlighting fürs Board (Link)
04.03.2016 09:03 eulerscheZahl ist offline Beiträge von eulerscheZahl suchen Nehmen Sie eulerscheZahl in Ihre Freundesliste auf
progger
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Wenn ich deinen Coden bei mir bei eclipse einbaue ,werden mir viele Fehler angezeigt .

Ich habe die Operator Ausgabe ein wenig erweitert .

Hoffe das stimmt so ?

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
#ifndef CTEAM_H_
#define CTEAM_H_
#include <string>
#include <iostream>
using namespace std;


class CTeam{

private:
	string m_teamName;
	unsigned int m_winsTotal = 0;
	unsigned int m_equalTotal = 0;
	unsigned int m_goalsScoredTotal = 0;
	unsigned int m_goalsReceivedTotal = 0;

public:

	/*CTeam::*/CTeam( string name = "NoName");
	string getName();
	void addResult( unsigned int goalsScored, unsigned int goalsReceived);
    unsigned const int getTotalPoints();

    friend ostream& operator >> (ostream& out , CTeam const& rop);
    bool operator << (CTeam const& rop);








};





cpp

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:

#include <iostream>
#include <string>
#include "CTeam.h"

using namespace std;

CTeam::CTeam(string name = "NoName") {
    m_teamName = name;
	m_goalsScoredTotal = 0;
	m_goalsReceivedTotal = 0;
	m_winsTotal = 0;
	m_equalTotal = 0;
	m_lostTotal = 0;
}

string CTeam::getName() {
    return m_teamName;
}


void CTeam::addResult(unsigned int goalsScored, unsigned int goalsReceived){
    if (goalsScored > goalsReceived) {
        m_winsTotal++;
    }
    if (goalsReceived > goalsScored) {
        m_lostTotal++;
    }
    if (goalsReceived == goalsScored) {
           m_equalTotal++;
    }
	m_goalsScoredTotal += goalsScored;
	m_goalsReceivedTotal+= goalsReceived;
 };

unsigned const CTeam:: getTotalPoints(){
	  return  m_winsTotal*3 + m_equalTotal*1;
};

ostream& operator << (ostream &out, const CTeam &rop) {
	 out<<"CTeam@" << rop.m_winsTotal<< "Spiele gewonnen  " << " , " <<  rop.m_equalTotal << " Spiele unentschieden"<< endl;

	 out << "CTeam@"<<  m_goalsScoredTotal << " Tore erzielt " <<" , " << m_goalsReceivedTotal << " " << " Tore kassiert "<< endl;



Fehler :

Description Resource Path Location Type
'm_goalsReceivedTotal' was not declared in this scope CTeam.cpp /CTeam line 42 C/C++ Problem
'm_goalsScoredTotal' was not declared in this scope CTeam.cpp /CTeam line 42 C/C++ Problem
'm_lostTotal' was not declared in this scope CTeam.cpp /CTeam line 13 C/C++ Problem
'm_lostTotal' was not declared in this scope CTeam.cpp /CTeam line 26 C/C++ Problem
'unsigned int CTeam::m_equalTotal' is private CTeam.h /CTeam line 20 C/C++ Problem
'unsigned int CTeam::m_winsTotal' is private CTeam.h /CTeam line 19 C/C++ Problem
after previous specification in 'CTeam::CTeam(std::string)' [-fpermissive] CTeam.h /CTeam line 26 C/C++ Problem
default argument given for parameter 1 of 'CTeam::CTeam(std::string)' [-fpermissive] CTeam.cpp /CTeam line 7 C/C++ Problem
Invalid overload of 'endl' CTeam.cpp /CTeam line 42 Semantic Error
Symbol 'm_goalsReceivedTotal' could not be resolved CTeam.cpp /CTeam line 42 Semantic Error
Symbol 'm_goalsScoredTotal' could not be resolved CTeam.cpp /CTeam line 42 Semantic Error
Symbol 'm_lostTotal' could not be resolved CTeam.cpp /CTeam line 13 Semantic Error
Symbol 'm_lostTotal' could not be resolved CTeam.cpp /CTeam line 26 Semantic Error
within this context CTeam.cpp /CTeam line 40 C/C++ Problem
no return statement in function returning non-void [-Wreturn-type] CTeam.cpp /CTeam line 43 C/C++ Problem
No return, in function returning non-void CTeam.cpp /CTeam line 39 Code Analysis Problem
non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default] CTeam.h /CTeam line 19 C/C++ Problem
non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default] CTeam.h /CTeam line 20 C/C++ Problem
non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default] CTeam.h /CTeam line 21 C/C++ Problem
non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default] CTeam.h /CTeam line 22 C/C++ Problem


So viele Fehler großes Grinsen
04.03.2016 09:37
Seiten (4): [1] 2 3 nächste » ... letzte » Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Praktische Informatik » C++ Einführung