Как это исправить - ошибка: неправильное использование className :: className? - PullRequest
0 голосов
/ 18 февраля 2020

Получение ошибки: недопустимое использование className :: className.

Пытался создать класс timeStamp, который представлял бы время дня, он хранит секунды, минуты, часы в указанных c переменных. Произошла ошибка в строке # 13 основной функции , ошибка гласит: неверное использование timeStamp :: timeStamp что я сделал не так? Есть заголовочный файл, в котором объявлены все методы.

Исходный файл cpp:

    #include "timeStamp.h"
#include <iostream>
using namespace std;

timeStamp::timeStamp()
{
    Hour = 0;
    Minute = 0;
    Second =0;
}
timeStamp::timeStamp(int h, int m, int s){

Hour = h;
Minute = m;
Second = s;

}
int timeStamp::getHour(){

return Hour;
}

int timeStamp::getMinute(){
return Minute;
}
int timeStamp::getSecond(){
return Second;
}

bool timeStamp::operator!=(timeStamp t){

    if (Second ==t.Second && Minute ==t.Minute && Hour ==t.Hour)
        return true;
    else
        return false;

}

void timeStamp::Print()
{
    std:: cout<<"Hour:"<<Hour<<"\nMinute:"<<Minute<<"\nSecond:"<<Second<<std::endl;
}

Main:

#include <iostream>
#include "timeStamp.cpp"

using namespace std;

int main()
{
    timeStamp obj1, obj2;
    int h,m,s;

        cout<<"Give hour minute and second:";
        cin>>h>>m>>s;
        obj1.timeStamp(h,m,s); //error
        cout<<"Give H M S";
        cin>>h>>m>>s;
        obj2.timeStamp(h,m,s);

        bool isEqual = obj1 ! = obj2;
        cout<<isEqual<<endl;

}

1 Ответ

2 голосов
/ 18 февраля 2020

Это не то, как вы создаете объекты.

Вы должны предоставить аргументы конструктора в точке определения.

Вы не можете вызвать конструктор как функцию позже.

int main()
{
    int h,m,s;

    cout<<"Give hour minute and second:";
    cin>>h>>m>>s;
    timeStamp obj1(h,m,s);

    cout<<"Give H M S";
    cin>>h>>m>>s;
    timeStamp obj2(h,m,s);

    bool isEqual = obj1 ! = obj2;
    cout<<isEqual<<endl;
}

Я уверен, что ваша книга более подробно об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...