Я немного застрял на своей домашней работе и мог бы немного помочь. Я определенно не ищу кого-то, кто сделает мою домашнюю работу для меня, но я уверен, что мог бы использовать некоторые предложения.
Я действительно извиняюсь за публикацию в топике c, который уже был опубликован в десятки раз. Я прочитал, что я мог найти, и я все еще застрял.
С программой связано 3 файла - app. cpp имеет main, student.h имеет прототипы функций и определения класса. студент. cpp имеет все функции.
Мы только начали изучать классы, и это задание - просто упражнение с использованием класса. Он сравнивает два студенческих идентификатора, чтобы найти меньшие, а затем проверяет, достаточно ли высокий gpa, связанный с этим идентификатором, для наград.
Когда я пытаюсь его скомпилировать, я получаю кучу ошибок о том, что я не объявлен в области видимости. Насколько я понимаю, эта ошибка возникает, когда что-то не объявлено заранее. Но я не могу понять, что это может быть, так как все объявлено. Я попросил преподавателя в школе быстро взглянуть на это, и она не поняла, в чем проблема. Я собираюсь опубликовать мои 3 файла и мои сообщения об ошибках - надеюсь, это не слишком много!
Я очень, очень ценю любую помощь!
приложение. cpp
#include "student.h"
int main()
{
Student s1("G10", 3.9);
Student s2("G20", 3.5);
isLessThanByID(s2);
qualifyForHonor(minGpaForHonor);
s1.print();
s2.print();
return 0;
}
student.h
#ifndef STUDENT_H
#define STUDENT_H
#include <iostream>
using namespace std;
class Student
{
public:
Student(const char initId[], double gpa);
bool isLessThanByID(const Student& aStudent) const;
bool qualifyForHonor(double minGpaForHonor) const;
void print()const;
private:
const static int MAX_CHAR = 100;
char id[MAX_CHAR];
double gpa;
}; double minGpaForHonor = 3.75;
#endif
студент. cpp
void Student::Student(const char initId[], double gpa)
{
id = initId[];
}
bool Student::isLessThanByID(const Student& aStudent) const
if(s1.isLessThanByID (s2) == > 0)
cout << "s1 is greater than s2" << endl;
}
bool Student::qualifyForHonor(double minGpaForHonor, double gpa) const
{
if (gpa >= minGpaForHonor)
{
return true;
}
}
void Student::print() const
{
cout << id << '\t' << gpa << endl;
}
ошибки
g++ -Wall -g -std=c++11 -c -o app.o app.cpp
app.cpp: In function ‘int main()’:
app.cpp:8:2: error: ‘isLessThanByID’ was not declared in this scope
isLessThanByID(s2);
^~~~~~~~~~~~~~
app.cpp:9:2: error: ‘qualifyForHonor’ was not declared in this scope
qualifyForHonor(minGpaForHonor);
^~~~~~~~~~~~~~~
app.cpp:9:2: note: suggested alternative: ‘minGpaForHonor’
qualifyForHonor(minGpaForHonor);
^~~~~~~~~~~~~~~
minGpaForHonor
<builtin>: recipe for target 'app.o' failed
make: *** [app.o] Error 1