А
Feb. 18, 2019, 9:02 p.m.

Ошибка при запуске

Непойму, где исправить нужно, точнее что именно он хочет от меня.

We recommend hosting TIMEWEB
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.
10

Добрый день.

Ну Qt Creator как всегда даёт прикурить нервам новичков )))))

Я так полагаю, что у вас все эти переменные Ox , onePixelX , pictHeight , ну или часть из них являются переменными типа данных double.

А метод drawLine ожидает переменные типа int в качестве аргументов, так вот, у вас там происходит неявное преобразование из тип данных double в int. В этом случае теряется дробная часть, что может быть важно для точных расчётов, но очевидно, что это не важно в вашем коде, вам там не нужна такая точность.

Поэтому, что касается первых четырёх варнингов, то можно просто закрыть глаза на них, это будет работать.

Ну или скастовать на int явно

static_cast<int>(pictHeight)

Однако, на мой взгляд, это лишнее, можно просто проигнорить эти варнинги, ну или отключить их вовсе в настройках статического анализатора. Хотя... поработайте с анализатором дальше, больше вопросов будет, может быстрее выучите подобные вещи.

Что касается последнего, то вот тут уже грубая ошибка.

Вместо такой записи

(double)rightX

Нужно записывать так

static_cast<double>(rightX)

Эта запись кастования будет правильнее для C++, а ваш изначальный вариант берёт корни ещё из Си, и является порой мягко говоря неуправляемым вариантом, поэтому в современных рекомендациях не приветствуется.

0
А

Можете пример с int 1 строчку сделать?) как правильно скаставать нужно?, с последнем разобрался. Спасибо

0

Да, конечно.

Думаю, что вот не будет уже ругаться, поскольку будет явно указан каст типов.

paint.drawPoint(static_cast<int>(Ox*onePixelX), 0, static_cast<int>(Ox*onePixelX), static_cast<int>(pictHeight));

Но вообще в продакшене обычно не заморачиваются в подобных случаях, если это не требуется для какого-либо специального случая.

Мы у себя, например, не используем касты с double на int и оставляем неявное преобразование. Это и так любой программист с опытом понимает, что конкретно происходит в том случае. Но если вы делаете курсовую работу, то думаю, что это может быть зачтено вам в плюс, когда будете объяснять преподавателю, зачем сделали этот static_cast. (Если, конечно, я правильно понял вашу ситуацию)

0
А

Спасибо заработала)

0
А

Разбирал тут один пример, "Построение графиков простейших функций в Qt". Код вставил, хотел проверить на работа способность, выдал ошибку. Выделил красным код каторый высвечивает. В конце должно получится так, я так понял что код не туда добавил, либо неправильно написан.

0
А

Хочу попробовать добавить сюда ещё функций, с добавлением скорости и направления движения объектов, а в конце определить будут пересекатся или нет. По вашему много кода писать прийдётся для всего задуманого?)

0

Ну собственно я не вижу объявления тех переменных в коде, так что правильно подсвечивает.

0

Зависит от того, как будете реализовывать.

Пересечение линий в Qt можно в несколько строк написать. Смотрите в документацию, там есть метод intersect .

Со скоростью не знаю, как собираетесь делать, если это на основе скалярных веторов, то длина вектора будет отражать скорость.

По сути это может вылиться в написание отдельного класс строчек на 40-50, если действительно нужно будет.

Пересечение объектов если делать по вектору их скоростей, то скорее всего тоже строчек в 50 будет. Если навскидку.

Если конечно это не хотите всё в реалтайме делать, если да, то ещё строчек 50.

Но это всё навскидку, +- километр.

0
А

Вы игру когда писали, в ней по сути тоже есть момент, где жук доганяет муху.Только мне нужно чтобы я мог изменять в графической форме все данные. Хотя в игре я так понял другие ходы реализации программы.

0

Ну у меня координаты передавались в зависимости от положения курсора мыши, а в вам по сути нужно будет аналогичным способом посылать даннные из полей ввода.

Так что здесь скорее интерфес для установи параметров будет иной.

0

Comments

Only authorized users can post comments.
Please, Log in or Sign up
TT
June 13, 2019, 7:01 p.m.
Taimoor Tanweer

C++ - Test 001. The first program and data types

  • Result:66points,
  • Rating points-1
TT
June 13, 2019, 6:51 p.m.
Taimoor Tanweer

C++ - Test 002. Constants

  • Result:75points,
  • Rating points2
ВМ
June 13, 2019, 12:30 p.m.
Ваня Мороз

C++ - Test 001. The first program and data types

  • Result:100points,
  • Rating points10
Last comments
i
June 17, 2019, 6:10 a.m.
ingenfly

Только по осям xAxis2, уAxis2 значения начинаются с 0. Почему-то xAxis2 и xAxis не синхронизированы по данным. Ну и QCustomPlot последний.
June 16, 2019, 8:21 p.m.
Евгений Легоцкой

Добрый день. Ну точно также добавляете ту же самую информацию на ось xAxis2, только добавляете другое форматирование customPlot->xAxis2->setDateTimeFormat("hh:mm"); если я ...
EF
June 14, 2019, 1:56 p.m.
Egor Fomin

Спасибо за ваш ответ, у меня получилось реализовать это. Тем не менее появилась другая проблема, поэтому опять надеюсь на вашу помощь. Скажем, я уже выставил точки и они соеденены. Когда я нач...
d
June 13, 2019, 2:47 p.m.
damix

Можно классу, который описывает точку, добавить сигнал, который подавать (emit), когда точка перемещается (переопределить mouseMoveEvent или mouseReleaseEvent). Так вот эти сигналы у каждой из...
i
June 13, 2019, 2:09 p.m.
ingenfly

Здравствайте! Подскажите, пожалуйста: customPlot->xAxis2->setTickLabels(true); //Здесь включается отображение данных на оси xAxis2. а можно как-то продублировать информацию cus...
Now discuss on the forum
I
June 19, 2019, 1:41 p.m.
Intruder

Всем добрый день. При разборе XML файла наткнулся на тег вот такого плана: <TagName attribute1="value1" attribute2="value2" /> При попытке проверить на наличие такого элеме...
June 19, 2019, 12:55 p.m.
Михаиллл

Скажите пожалуйста, как его в таком случае перемещать и удалять?
June 18, 2019, 7:50 p.m.
Дмитрий

Большое спасибо! SDK заработал.К сожалению удалось продвинутся только на один шаг. При сборке чистого проекта NDK выдаёт следующие ошибки C:\Android\ndk-bundle/toolchains/arm-linux-andr...
June 18, 2019, 4:59 p.m.
Михаиллл

Добрый день.В этом учебнике представлен код INSTALLED_APPS = ( ... 'rest_framework', 'snippets.apps.SnippetsConfig',) На строчке 'snippets.apps.SnippetsConf...
June 18, 2019, 2:24 p.m.
Михаиллл

Спасибо, работает.Послушаю вашего совета.
Looking for a Job?
25,000.00 руб. - 30,000.00 руб.
Разработчик Qt/C++
Barnaul, Altai Krai, Russia

For registered users on the site there is a minimum amount of advertising

EVILEG
About
Services
Join us
© EVILEG 2015-2019
Recommend hosting TIMEWEB