Вызываю элемент-функцию displayMessage объекта myGradeBook с аргументами.
Почему в функцию displayMessage класса GradeBook нужно вписывать string nameOfCourse, если мы и так в main вызвали её с такими аргументами? Поидее аргументы должны передаться при вызове из main. И почему string nameOfCourse а не nameOfCourse(имя объекта класса в main)?
Я недавно начал изучать C++ и это вопрос моей логики. Заранее благодарен!
#include <iostream> // Директива препроессора ввод\вывод данных
using std::cout;
using std::cin;
using std::endl;
#include <string> // программа использует класс string из стандартной библиотеки C++
using std::string;
using std::getline;
class GradeBook
{
public:
void displayMessage(string nameOfCourse) // почему string + nameOfCourse?
{
cout << "Welcome to GradeBook for\n" << nameOfCourse << "!" << endl;
}
};
int main()
{
string nameOfCourse;
GradeBook myGradeBook;
cout << "Please enter the course name:" << endl;
getline(cin, nameOfCourse); // функция с аргументами
cout << endl;
myGradeBook.displayMessage(nameOfCourse); // вызываем функцию и передаем аргументы
return 0;
}