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

Error C2106: '=' : left operand must be l-value - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Передача двумерного массива в конструктор класса http://www.cyberforum.ru/cpp-beginners/thread1719777.html
Здравствуйте! Не получается передать двумерный массив как параметр конструктора. Необходимо, чтобы пользователь ввел размерность квадратной матрицы и массив с клавиатуры. Эти значения надо...
C++ Сформировать одномерный массив из 50 элементов вещественного типа Расчет по формуле считается не правильно. Что не так ? Помогите исправить , кого это не затруднит , пожалуйста. a) Сгенерировать одномерный массив из 40 элементов целого типа в диапазоне ; b)... http://www.cyberforum.ru/cpp-beginners/thread1719757.html
C++ нужно переделать код системы счисления с делфи на с++ 2 часть
PROCEDURE TForm1.BIN_to_OCT(const n:string;Sender: TObject); var st1,st2,tmp,tmp2:string; flag:arrayof boolean; d,j:byte; BEGIN if flag_clear then memo1.Lines.Clear; memo1.Lines.Add(' ...
C++ Переделать код системы счисления с Delphi на C++
const cod:arrayof char= ('0','1','2','3','4','5','6','7','8','9','A','B','C','D', 'E','F'); cod2:arrayof string= ('000','001','010','011','100','101','110','111'); cod3:arrayof string= ...
C++ Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse) http://www.cyberforum.ru/cpp-beginners/thread1719744.html
Ребят, умоляю помогите. Незнаю что я опять делаю не так, но выдает такую ошибку. В общем задание такое: Работа с бинарными файлами. Матрица целых чисел записана по строкам в файл. Не используя...
C++ Второй отрицательный элемент заменить минимальным Здравствуйте)Помогите пожалуйста, запуталась(Нужно заменить именно второй элемент. Например: -10,9,-2,3. (в примере заменится -2 на -10). Минимальное уже найдено в функции. Измените функцию void z1.... подробнее

Показать сообщение отдельно
Alonka
0 / 0 / 0
Регистрация: 17.04.2016
Сообщений: 18

Error C2106: '=' : left operand must be l-value - C++

24.04.2016, 17:05. Просмотров 926. Ответов 31
Метки (Все метки)

Добрый день! Пишу программу управления колледжом. И столкнулась с этой ошибкой.

У меня есть класс Department который имеет массив указателей на Course:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class Department
{
    static Department* p_department;    
private:
    string name_department;
    long id_department; 
    Course** p_course;
    int count_course;
    Department(const Department& d);
    void operator = (const Department& d);
public: 
    Department();
    static Department* instance();
    ~Department();  
    void set(string name_department, long id_department);
    long get_id_department() const { return id_department; }
    int get_count_course() const { return count_course; }
    Course** get_p_course() { return p_course; }
    friend ostream& operator << (ostream &os, const Department* p_department);
    friend istream& operator >> (istream &is, Department* p_department);
    friend void operator += (Department* p_department,const Course& temp);
 
};
И в нем я пытаюсь перегрузить оператор += который добавляет Course в Department:
C++
1
2
3
4
5
6
7
8
9
10
11
void operator += (Department* p_department, const Course& temp)
{
    int count_course = p_department->get_count_course();
    if (!count_course)
    {
        p_department->get_p_course() = new Course*[count_course + 1]; //здесь выдает ошибку
        p_department->get_p_course()[0] = Course::instance();
        cin >> p_course[0];
        count_course++;
    }
...
Ошибка появляется тогда когда я хочу получить указатель на курсы и создать массив.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru