Ich bin neu in C++ und ich habe ein Beispiel in CodeBlocks geschrieben, um zu sehen, wie dieses Programm funktioniert. Hier ist das Programm:CPP-Programm läuft nicht
#include <iostream>
#include <string>
using std::cout;
using std::cin;
using std::endl;
using std::string;
class GradeBook
{
public:
GradeBook(string name)
{
setCourseName(name);
}
void setCourseName(string name)
{
courseName = name;
}
string getCourseName()
{
return courseName;
}
void displayMessage()
{
cout << "Welcome to the gradebook for \n" << getCourseName() << "!" << endl;
}
private:
string courseName;
};
int main()
{
GradeBook gradeBook1("Introduction to C++");
cout << gradeBook1.displayMessage() << endl;
return 0;
}
Und wie Sie habe ich sehen können eine displayMessage
Funktion bei Haupt und es sollte grundsätzlich auszudrucken eine Erklärung basiert auf dem Argument aufgerufen, die ich ealier in gradeBook1
Objekt aufgerufen haben.
Aber das Problem ist, es startet nicht und ich weiß nicht warum!
Und hier ist das Fehlerprotokoll:
||=== Build: Debug in Youtube (compiler: GNU GCC Compiler) ===|
C:\Users\Pouya\Desktop\C++_Tutorials\Youtube\main.cpp||In function 'int main()':|
C:\Users\Pouya\Desktop\C++_Tutorials\Youtube\main.cpp|35|error: no match for 'operator<<' (operand types are 'std::ostream {aka std::basic_ostream<char>}' and 'void')|
Hier ist dein Problem: cout << gradeBook1.displayMessage() << endl; und Sie rufen void displayMessage() auf. Rufen Sie gradeBook1.displayMessage() auf; dann wird es funktionieren – Asesh