Ik ben een x aantal dagen geleden begonnen met het lezen van een C++ boek. Hierin worden een aantal opdrachten gegeven (zonder antwoorden) die je als training kunt uitvoeren. In het laatste hoofstuk ging het over class's en het splitsen van de class van het hoofdprogramma. Ook werd behandelt hoe je de interface van een class splitst van de function definitions.
Ik heb dus onderstaand programma geschreven volgens de opdracht, maar dan krijgt ik bij compileren de volgende meldingen van de compiler (dev c++):
(de titel is inmiddels niet meer van toepassing, althans niet hier... als ik het voorbeeld bestand van het boek erbij pak krijg ik gek genoeg wel de undifined reference fouten...)
En dit zijn dan de bijbehorende files (3 stuks):
Bij gebrek aan kennis weet k zelf niet waardoor dit komt, maar zou graag wel eerst de oplossing willen voordat ik verder ga. Kan iemand mij helpen?
Alvast bedankt!
Groetjes Twan
Ik heb dus onderstaand programma geschreven volgens de opdracht, maar dan krijgt ik bij compileren de volgende meldingen van de compiler (dev c++):
(de titel is inmiddels niet meer van toepassing, althans niet hier... als ik het voorbeeld bestand van het boek erbij pak krijg ik gek genoeg wel de undifined reference fouten...)
Line 14 : In file included from %path%\new.cpp
Line 19:3 : [Warning] no lewline at end of file
: In function 'int main()'
Line 20 : 'class Project' has no member named 'getProjectName'
En dit zijn dan de bijbehorende files (3 stuks):
Code:
// new.cpp
#include <iostream>
using std::cout;
using std::endl;
#include <string>
using std::string;
#include "Project.h"
int main()
{
Project name( "Project 001", "John" );
cout << name.getProjectName() << "\n" << name.getProjectUser() << endl;
system("pause");
return 0;
}
Code:
// Project.h
#include <string>
using std::string;
class Project
{
public:
Project(string, string);
void setProjectName(string);
string getProcjectName(); // verbeterd naar string getProjectName();
void setProjectUser(string);
string getProjectUser();
private:
string projectName;
string projectUser;
};
Code:
// Project.cpp
#include <string>
using std::string;
#include "Project.h"
Project::Project(string name, string user)
{
setProjectName(name);
setProjectUser(user);
}
void Project::setProjectName(string name)
{
projectName = name;
}
string Project::getProjectName()
{
return projectName;
}
void Project::setProjectUser(string name)
{
projectUser = name;
}
string Project::getProjectUser()
{
return projectUser;
}
Bij gebrek aan kennis weet k zelf niet waardoor dit komt, maar zou graag wel eerst de oplossing willen voordat ik verder ga. Kan iemand mij helpen?
Alvast bedankt!
Groetjes Twan
Laatst bewerkt: