Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
alexSo94
140 / 4 / 1
Регистрация: 24.02.2013
Сообщений: 46
#1

Класс С++. Вычисление разницы в возрасте для двух студентов - C++

17.04.2013, 16:05. Просмотров 395. Ответов 6
Метки нет (Все метки)

Вычисление разницы в возрасте для двух студентов (-).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int  operator - (CStudent &a); 
------------------------------------
int CStudent::operator -(CStudent &a)
{   if (year=!0) 
    return (year - a.get_year());
    else cout<<"\nНевозможно перевести студента на следующий курс";
    
}
--------------------------------------
case '5':
            {
 
        CStudent s1  ("Петрова",  G1, 1995);
                    CStudent s2  ("Иванова", G2,  1991);
                
                    cout<<"\nСозданы два студента";
                    s1.output();
                    s2.output();
                    cout<<"\nДемонстрируется работа операции ";
                    int s3=s1-s2;
                    cout<<s3;
 
        
 
            }
---------------------------------------------
0
Миниатюры
Класс С++. Вычисление разницы в возрасте для двух студентов  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.04.2013, 16:05
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Класс С++. Вычисление разницы в возрасте для двух студентов (C++):

Вычисление разницы дат - C++
Имеется код: char firstDate = &quot;2015-07-09&quot;; char secondDate = &quot;2015-07-07&quot;; char* format = &quot;%Y-%m-%d&quot;; struct tm tm; ...

Вычисление разницы произведения и суммы положительных элементов массива - C++
Помогите пожалуйста написать программу Дан вектор A, который содержит n элементов. Вычисление разницы произведения и суммы положительных...

Перегрузка операторов сравнения и разницы. Класс String - C++
Всем привет. задание написано в начале программы. Кто может помочь с исправлением -, &lt;, &gt; Мне только удалось перегрузить +, в...

Вычисление и вывод на экран в текстовый файл разницы максимум и минимум из K чисел - C++
3.Создать описание класса,содержащего методы(функции) для вычисления и вывода на экран в текстовый файл разницы максимум и минимум из K...

Вычисление степени матрицы, вычисления произведения двух матриц, вычисление суммы двух матриц - C++
Здравствуйте, помогите решить, пожалуйста: Заданы две квадратные матрицы А и В. Вычислить матрицу...

Строка: Добавить в строковый класс функцию, которая создает строку, содержащую пересечение двух строк, то есть общие символы для двух строк. - C++
Добавить в строковый класс функцию, которая создает строку, содержащую пересечение двух строк, то есть общие символы для двух строк....

6
Afflicted
Обитатель форума
199 / 182 / 8
Регистрация: 28.10.2012
Сообщений: 543
17.04.2013, 16:09 #2
C++
1
2
3
4
5
6
7
const CStudent& operator - (const CStudent& a)
{
    if (this->year =! 0)
        return (this->year - a.get_year());
    else
        cout << "\nНевозможно перевести студента на следующий курс";
};
1
alexSo94
140 / 4 / 1
Регистрация: 24.02.2013
Сообщений: 46
17.04.2013, 16:31  [ТС] #3
Цитата Сообщение от Afflicted Посмотреть сообщение
C++
1
2
3
4
5
6
7
const CStudent& operator - (const CStudent& a)
{
    if (this->year =! 0)
        return (this->year - a.get_year());
    else
        cout << "\nНевозможно перевести студента на следующий курс";
};
C++
1
2
rror C2662: CStudent::get_year: невозможно преобразовать указатель "this" из "const CStudent" в "CStudent &"
1>          В результате преобразования теряются квалификаторы
В чем может быть проблема?
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
17.04.2013, 16:32 #4
alexSo94, В том что get_year должна быть константной функцией, ибо не изменяет состояние объекта.
0
alexSo94
140 / 4 / 1
Регистрация: 24.02.2013
Сообщений: 46
17.04.2013, 16:41  [ТС] #5
Цитата Сообщение от ForEveR Посмотреть сообщение
alexSo94, В том что get_year должна быть константной функцией, ибо не изменяет состояние объекта.
У меня в классе она обьявлена так:
C++
1
int get_year(){return year;}
Когда меняю на const вылетает ошибка
0
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
17.04.2013, 16:43 #6
alexSo94,
C++
1
int get_year() const {return year;}
Оператор должен выглядеть как

C++
1
2
3
4
5
6
7
int CStudent::operator -(const CStudent &a)
{   
    if (year != 0) 
       return year - a.get_year();
    cout<<"\nНевозможно перевести студента на следующий курс";
    return 0;
}
1
alexSo94
140 / 4 / 1
Регистрация: 24.02.2013
Сообщений: 46
17.04.2013, 16:50  [ТС] #7
Цитата Сообщение от ForEveR Посмотреть сообщение
alexSo94,
C++
1
int get_year() const {return year;}
Оператор должен выглядеть как

C++
1
2
3
4
5
6
7
int CStudent::operator -(const CStudent &a)
{   
    if (year != 0) 
       return year - a.get_year();
    cout<<"\nНевозможно перевести студента на следующий курс";
    return 0;
}
Огромное тебе человеческое спасибо)))) А то с классами не так давно)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.04.2013, 16:50
Привет! Вот еще темы с ответами:

Составить программу для вычисления среднего балла студентов, если количество студентов и оценки вводятся с клавиатуры. - C++
Привет всем )) Нужна помощь 3. Задача (язык С + +). Составить программу для вычисления среднего балла студентов, если количество...

Класс не создается группа студентов - C++
Всем привет! падает программа что я не так сделал? два класса группа студентов и сам студент я хочу динамично создать группу студентов...

Реализовать класс ModelWindow, добавив поле для курсора, используя для представления поля класс Cursor - C++
Реализовать класс ModelWindow, добавив поле для курсора. Используйте для представления поля класс Cursor. (это под типом класс в классе).

Определить двух студентов с наивысшим средним баллом. - C++
С текстового файла считать последовательность записей, содержащих данные о результатах сессии студентов группы в следующем формате:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
17.04.2013, 16:50
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru