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

Компилятор просит указать const в конструкторе - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ MessageBox API http://www.cyberforum.ru/cpp-beginners/thread629083.html
MessageBox API: не получаеться обработать выбор. Мой код: int SELECT = MessageBox(hwnd, _T("Вы действительно хотите завершить работу программы? ВНИМАНИЕ! В случае завершения работы программы, клиенты не смогут подключиться."), _T("Завершение работы"), MB_OKCANCEL | MB_ICONQUESTION); if (SELECT = MB_OK) { PostQuitMessage(0); }
C++ Перегрузка потокового оператора (<<). Выдает адрес вместо значения Сабж. Все компелится нормально. Если делать << void то работает ок см комменты если делать класса std::ostream& то возвращает 16чное значение. Заранее спасибо #ifndef Point_HPP // anti multiply including gates #define Point_HPP #include <sstream> http://www.cyberforum.ru/cpp-beginners/thread629067.html
C++ Реализовать шаблонный класс
В общем требуется реализовать шаблонный класс FixedArray<T,N> FixedArray - абстракция вокруг T Использование выглядит как то так: FixedArray<std::vector, 8> myArr1 = {1, 2, 3, 4}; FixedArray<std::string, 8> strArr = {"a", "b", "c", "d"};
stdlib.h - quicksort C++
Идея такова: отсортировать массив A очень быстрым методом Хоара. Пробовал в stdlib.h делать QuickSort - ничего не получилось. Все значения элементов - до 263-1. Т.е. влазят в тип long. Помогите отсортировать!
C++ KeyDown обрабатывает только символы http://www.cyberforum.ru/cpp-beginners/thread629012.html
Всем привет. Собственно сам вопрос, когда я вызываю функцию (пишу на WinApI, но вопрос из основ c++) Она реагирует только на буквы, цифры, а мне нужно ещё VK_LEFT, VK_RIGHT. Но почему то эта функция их не обрабатывает, вопрос почему. void CMovingBallDlg::KeyD(HWND hwnd, UINT vk, BOOL fDown, int cRepeat, UINT flags) { switch (wP) { case (VK_LEFT)://сообщение не обрабатывается {...
C++ Написать dll для дальнейшего использования в программах на других языках как правильно написать dll чтоб ей можно было пользоваться программам на других языках, например, на delphi подробнее

Показать сообщение отдельно
moskitos80
44 / 44 / 3
Регистрация: 04.10.2011
Сообщений: 158
Завершенные тесты: 1
27.07.2012, 10:19  [ТС]     Компилятор просит указать const в конструкторе
Цитата Сообщение от nameless Посмотреть сообщение
Стоит. В российских вузах программирование дают посредственно.
Спасибо, а то я уже начал отчаиваться. Надеюсь всё-таки осилю.

Ведь в своё время - 3 года назад, когда начинал изучать php для меня массивы были чем то страшным и непонятным, циклы - вообще ужас а теперь я просто не представляю, как без всего этого жить. Потом был ООП - это по началу казалось чем то не постижимым, а теперь только его и использую (в больших проектах). Дальше - шаблоны проектирования Теперь понимаешь, что реализация - это вообще не проблема, а вот грамотно построить архитектуру это да... В общем, конечно всё по началу пугает... но мне кажется С++ как то особенно здесь не то что архитектура... блин простые вещи сделать - мозгов не хватает

Добавлено через 11 часов 11 минут
Нашёл ответы на свои вопросы здесь: http://ru.wikipedia.org/wiki/%D0%9A%...D%D0%B8%D0%B5)

Конструктор копирования

Конструктор, аргументом которого является ссылка на объект того же класса. Применяется в C++ для передачи объектов в функции по значению.
Конструктор копирования в основном необходим, когда объект имеет указатели на объекты выделенные в куче. Если программист не создаёт конструктор копирования, то компилятор создаст неявный конструктор копирования, который копирует указатели как есть, то есть фактическое копирование данных не происходит и два объекта ссылаются на одни и те же данные в куче. Соответственно попытка изменения «копии» повредит оригинал (!), а вызов деструктора для одного из этих объектов при последующем использовании другого приведёт к обращению в область памяти, уже не принадлежащую программе.
Аргумент должен передаваться именно по ссылке, а не по значению. Это вытекает из коллизии: при передаче объекта по значению (в частности, для вызова конструктора) требуется скопировать объект. Но для того, чтобы скопировать объект, необходимо вызвать конструктор копирования.

Тут ответы и почему по ссылке, и почему const Похоже тему можно закрывать.
 
Текущее время: 09:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru