Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/47: Рейтинг темы: голосов - 47, средняя оценка - 4.53
8 / 8 / 5
Регистрация: 28.10.2012
Сообщений: 135

Ошибка: Binding 'const Ship' to reference of type 'Ship&' discard qualifiers. Не пойму, где теряется const

16.01.2017, 01:15. Показов 10025. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
есть public метод класса с квалификатором const

тип _ships - QMultiMap
QMultiMap имеет унаследованные методы values(), value(const int) также с const.

C++ (Qt)
1
2
3
4
5
6
7
8
const QList<Ship> getShip(const int lenghtOfShip = 0) const
    {
 
        if (lenghtOfShip == 0)
            return _ships.values();   
 
        return _ships.values(lenghtOfShip);
    }
Помогите разобраться, как исправить ошибку? Где именно теряется квалификатор?
Миниатюры
Ошибка: Binding 'const Ship' to reference of type 'Ship&' discard qualifiers. Не пойму, где теряется const  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.01.2017, 01:15
Ответы с готовыми решениями:

Cannot convert ‘& a’ (type ‘A*’) to type ‘const QObject*’
Извиняюсь за глупый вопрос. Где я что делаю не так? Хочу вывести выхлоп дочернего процесса на stdin. shell.h #include...

Ошибка: cannot bind non-const lvalue reference of type 'double&' to an rvalue of type 'double' - почему?
Всем привет! В программе вызываю функцию: UpdateEditControl(IDC_EDIT7, CalculateRecommended(resistor_lim, nominal, sizeNominal)); ...

Странная ошибка invalid initialization of non-const reference of type 'std::vector<oneVec>::iterator&
Пишу я значит двухмерный вектор, решаю проверить наличие ошибок(я просто компилирую) и выдают такую замудрёную ошибку: 36:53: error:...

5
8 / 8 / 5
Регистрация: 28.10.2012
Сообщений: 135
16.01.2017, 01:21  [ТС]
вот определение _ships
C++ (Qt)
1
2
private:
     QMultiMap<int,Ship> _ships;
0
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
16.01.2017, 09:23
последняя строка вывода компиля на вашем изображении намекает.
видимо у вас как-то так определен оператор:
C++ (Qt)
1
Ship& operator=(Ship&)
а должно быть
C++ (Qt)
1
Ship& operator=(const Ship&)
0
8 / 8 / 5
Регистрация: 28.10.2012
Сообщений: 135
16.01.2017, 12:15  [ТС]
Цитата Сообщение от retmas Посмотреть сообщение
Ship& operator=(const Ship&)
- а разве обязательно c конст, допускают и без.

Я решил открыть мой проект в студии (через плагин). В студии все собирается. Может быть я что-то упустил и неявно исправил, но вроде код тот-же...
Миниатюры
Ошибка: Binding 'const Ship' to reference of type 'Ship&' discard qualifiers. Не пойму, где теряется const  
0
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
16.01.2017, 12:42
Цитата Сообщение от nofx Посмотреть сообщение
- а разве обязательно c конст, допускают и без.
не в этом дело. это разные операторы.
ваш getShip возвращает const QList<Ship> и если вы где то пишите что-то вроде этого
C++ (Qt)
1
QList<Ship> list = obj.getShip();
то при вызове Ship& operator=(Ship&) будет попытка присвоить неконстантной ссылке константный объект.
для наглядности:
C++
1
2
3
const int i = 4;
int& i2 = i; // ошибка
const int& i3 = i; // ок
1
 Аватар для Skjame
86 / 45 / 11
Регистрация: 20.12.2010
Сообщений: 217
Записей в блоге: 1
16.01.2017, 13:47
nofx, студия много чего собирает, хотя как по мне лучше бы выдало еррор ( даже не варнинг )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.01.2017, 13:47
Помогаю со студенческими работами здесь

Non-const lvalue reference to type
Добрый день. Мне надо передать указатель на матрицу (Шахматная доска) Piece* board в функцию (Загрузить состояние доски из файла,...

Что это bool operator== (const CLASS&) const;
Что это? class CLASS { public: bool operator== (const CLASS&amp;) const; ...

const& и const* в имени функции
Объясните пожалуйста что значит const&amp; и const* в имени и параметрах функции(пример из Вандевурд,Джосаттис): template &lt;typename...

int const * const foo(const int* param) const - разъясните значение квалификаторов
int const * const foo(const int* param) const -----1------2----------3----------------4 1: ? 2: делает содержимое массива или...

error: no matching function for call to `QObject::connect(QPushButton&, const char[10], QApplication*, const char[8])'
Ошибка понимаю какая, но не понимаю, почему возникла и как исправить!) #include &lt;QtGui&gt; int main(int argc, char *argv) { ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru