Hey hab ein Fehler in meinem Quelltext an dem ich mir echt den Kopf zerbrech jegliche Fehler vermutung verliefen im Sand . Naja jetzt müsst ihr erfahrenen programmierer halt ran
. Bitte nehmt mich nicht zu sehr außeinnader, ich habe garde erst das Buch von Heiko durchgearbeitet und dieses war mein erstes Projekt, aber falls ihr verbesserungsvorschläge habt nehme ich sie gerne an, aber denkt daran das ich wirklich nur grundlagen besitze. Am wichtigsten wäre mir das dieser Fehler verschwindet also konzentriert euch bitte darauf. Damit ich den Thread nicht überflute poste ich nur die betroffene Datei. Kurz zur Funktion ich versuche die Breite, Höhe sowie den Zustand der jeweiligen Position (0 = Keinblock und >= 1 ein Block) als int in einem Vector in einer externen Datei zu speichern um dieses quasi als lvl zu benutzen. Wohl nicht optimal aber was effizienteres viel mir nicht ein
dabei ist pos 0 breite und pos 1 höhe. Hab das so gemacht weil ich später noch einen kleinen level editor einfügen möchte. Naja diese Funkltion install sollte vorerst nur einen Test level (Level0) für meine Lade funktion erstellen aber da hab ich mir ein Bein gestellt. Vielen Dank für die Hilfe.
LG Darwin
Header
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#ifndef INSTALL_HPP
#define INSTALL_HPP
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
class CInstall
{
public:
void InstallLevel();
private:
string m_LevelName; //String für den Namen des Levels
vector<int> m_vBlockPos; //Vekrotr für die Block Positionen
};
#endif
|
CPP
|
C-/C++-Quelltext
|
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
|
#include "Install.hpp"
void CInstall::InstallLevel()
{
//Breite des Levels
m_vBlockPos.push_back(17);
//Höhe des Levels
m_vBlockPos.push_back(17);
//for Schleife für die anzahl der felder durchlaufen
for (int i = 0; i >= m_vBlockPos.at(0) * m_vBlockPos.at(1); i++)
{
if (i % 5 == 0)
{
m_vBlockPos.push_back(1);
}
else
{
m_vBlockPos.push_back(0);
}
};
//Datei erstellen falls sie noch nicht exzestiert
ofstream Output ("Data/Level0.lvl", ios::binary);
Output.write ((char*) &m_vBlockPos, sizeof(m_vBlockPos));
}
|
Fehler:
error C2146: Syntaxfehler: Fehlendes ';' vor Bezeichner 'm_LevelName'
error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
error C2143: Syntaxfehler: Es fehlt ';' vor '<'
error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
error C2238: Unerwartete(s) Token vor ';'