0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
|||||||||||
1 | |||||||||||
Error C2106: '=' : left operand must be l-value24.04.2016, 17:05. Показов 5486. Ответов 31
Добрый день! Пишу программу управления колледжом. И столкнулась с этой ошибкой.
У меня есть класс Department который имеет массив указателей на Course:
0
|
24.04.2016, 17:05 | |
Ответы с готовыми решениями:
31
Error C2106: '=' : left operand must be l-value error C2106: '=' : left operand must be l-value выдаёт ошибку на сортировку Error: lvalue required as left operand of assignment| [Error] lvalue required as left operand of assignment |
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
|
28.04.2016, 10:29 [ТС] | 21 |
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
|
28.04.2016, 10:33 | 22 |
И учитывая, что массив двумерный, поиск индекса, наверное, нужно не вычитанием искать, а просмотром и сравнением.
Добавлено через 2 минуты Для таких целей нет. Я же говорю: static - это как глобальная переменная. Одна на всех, и значение одно. У тебя массив указателей и в нём каждый указатель только на один объект, так? Т. е. двумерный массив с одним столбцом?
1
|
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
|||||||||||||||||||||
28.04.2016, 10:43 [ТС] | 23 | ||||||||||||||||||||
Да! Тоесть убрать static из Student и просто сделать так:
Добавлено через 6 минут И функция
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
||||||
28.04.2016, 10:44 | 24 | |||||
Эта функция вообще не нужна. Ты можешь просто взять указатель от s с помощью &:
1
|
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
|
28.04.2016, 10:46 [ТС] | 25 |
Да,я поняла. Спасибо большое! Буду разбираться. Просто до этого разбиралась с шаблоном Singlton и что-то видно из-за него запуталась.
0
|
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
||||||||||||||||
30.04.2016, 14:18 [ТС] | 26 | |||||||||||||||
Появился вопрос. Я добавляю новый Department в College. В College.h есть Department** p_department.
Допустим name_department физика и id_department 123.
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
||||||
30.04.2016, 18:41 | 27 | |||||
Так нельзя. Всё нужно динамически создавать. А ты указатель на локальную переменную просто сохраняешь.
1
|
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
|||||||||||
01.05.2016, 13:56 [ТС] | 28 | ||||||||||
Спасибо большое за помощь!!Все получилось кроме удаления Student по его индексу из Course. И для этого как-то нужно использовать перегруженные квадратные скобки.
Я переделала поиск индекса студента через цикл
Уже все перепробывала. Все никак не могу удалить. Выдает или ошибка доступа к памяти или вызов abort().
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
||||||
01.05.2016, 14:01 | 29 | |||||
А как заполняется p_student? Так примерно должно быть:
1
|
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
||||||
01.05.2016, 14:08 [ТС] | 30 | |||||
И как бы я не пойму зачем мне в задании нужна перегрузка []. Я думала что как раз чтобы это как-то использовать чтоб удалить Student по его индексу.
0
|
7792 / 6559 / 2984
Регистрация: 14.04.2014
Сообщений: 28,668
|
||||||
01.05.2016, 15:20 | 31 | |||||
А добавляемый студент через new был создан? Если нет, то надо нового создавать при добавлении.
1
|
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18
|
||||||
01.05.2016, 16:48 [ТС] | 32 | |||||
Да, новый студент создается через new
И просто я уже все сделала и так мне эта перегрузка оператора и нигде и не понадобилась. И я решила что возможно с помощью [] скобок нужно как-то удалять студента. Добавлено через 46 минут Вобщем все работает.Спасибо огромное за помощь!!! Правда так и не поняла зачем вообще здесь перегружать квадратные скобки.
0
|
01.05.2016, 16:48 | |
01.05.2016, 16:48 | |
Помогаю со студенческими работами здесь
32
Error: lvalue required as left operand of assignment. Не могу разобраться где ошибка Error C2106 или error C2440 Lvalue required as left operand of assignment Ошибка в методе, left operand maust be I-value Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |