Russian Qt Forum
Ноябрь 24, 2024, 23:31
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Классы на чистом C++ или Qt-way?
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Классы на чистом C++ или Qt-way? (Прочитано 6942 раз)
8Observer8
Гость
Классы на чистом C++ или Qt-way?
«
:
Март 18, 2014, 05:53 »
Привет!
Буквально, пару мнений хотелось бы услышать. Не для кого не секрет, что в Qt можно использовать классы на чистом C++. Может имеет смысл везде, где это возможно придерживаться этой стратегии? Можно было бы использовать эти классы повторно и тем людям, которые работают с другими фреймворками. Я мог бы в будущем использовать свои наработки с другими фреймворками. А не менять потом везде QString на std::string
Заранее спасибо за ответы!
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Классы на чистом C++ или Qt-way?
«
Ответ #1 :
Март 18, 2014, 06:26 »
Смотря что за классы. Напр класс датчика в Вашем задании - возможно имеет смысл делать его "без Qt". И то проблематично - напр как хранить строки? Вместо QString юзать std::string - так это не unicode. Как только начнется взаимодействие этого класса с UI на Qt - придется переливать строки туда-сюда.
Цитата: 8Observer8 от Март 18, 2014, 05:53
Я мог бы в будущем использовать свои наработки с другими фреймворками. А не менять потом везде QString на std::string
Из старого мультфильма
Цитировать
Ой Ваня, а не высоко ль ты мостисся?
Записан
Bepec
Гость
Re: Классы на чистом C++ или Qt-way?
«
Ответ #2 :
Март 18, 2014, 07:33 »
А можно писать на чистом С. Тогда сможете после некоторого допила давать этот класс тем, кто работает на микроконтроллерах.
А ещё можно на асме
Тогда вообще раздолье.
Нет, не рационально это. Qt предлагает ускорение разработки и удобство. Вы же его хотите отбросить. Зачем вам тогда Qt?
PS а вот подумать о передаче данных в стандартном или Qt формате на выбор - можно. Тогда для принимающего не будет иметь значения на чём написан датчик или что-там у вас.
Записан
8Observer8
Гость
Re: Классы на чистом C++ или Qt-way?
«
Ответ #3 :
Март 18, 2014, 07:49 »
Цитата: Igors от Март 18, 2014, 06:26
как хранить строки? Вместо QString юзать std::string - так это не unicode.
По поводу unicode я не подумал. Пришлось бы использовать wstring. Спасибо!
Цитата: Bepec от Март 18, 2014, 07:33
PS а вот подумать о передаче данных в стандартном или Qt формате на выбор - можно.
Что такое "передаче данных в стандартном формате" я, кажется, понял: это XML и JSON. А вот что такое Qt-формат?
«
Последнее редактирование: Март 18, 2014, 08:11 от 8Observer8
»
Записан
LisandreL
Птица говорун
Offline
Сообщений: 984
Надо улыбаться
Re: Классы на чистом C++ или Qt-way?
«
Ответ #4 :
Март 18, 2014, 07:58 »
Цитата: 8Observer8 от Март 18, 2014, 07:49
А вот что такое Qt-формат?
Ну что-то в этом духе:
http://qt-project.org/doc/qt-5/datastreamformat.html
Хотя и для тех же xml/json в Qt средства имеются.
Записан
Bepec
Гость
Re: Классы на чистом C++ или Qt-way?
«
Ответ #5 :
Март 18, 2014, 08:06 »
Именно dataStream я и имел в виду.
Записан
8Observer8
Гость
Re: Классы на чистом C++ или Qt-way?
«
Ответ #6 :
Март 18, 2014, 08:14 »
Всем огромное спасибо! Я решил, что буду использовать везде Qt-way: там где надо и не надо
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: Классы на чистом C++ или Qt-way?
«
Ответ #7 :
Март 18, 2014, 08:20 »
Цитата: 8Observer8 от Март 18, 2014, 08:14
Всем огромное спасибо! Я решил, что буду использовать везде Qt-way: там где надо и не надо
Ну и зря.
Следующем шагом вам дадут задание отказаться от Qt на сервере, потому что там его не будет, и вам полностью придется все переделать.
Qt это всего лишь один из gui-фреймворков с кучей дополнительных плюшек. Завязываться только на него, это стать new delphi developer.
К Qt стоит относиться как к одной из библиотек.
«
Последнее редактирование: Март 18, 2014, 08:22 от Old
»
Записан
8Observer8
Гость
Re: Классы на чистом C++ или Qt-way?
«
Ответ #8 :
Март 18, 2014, 08:31 »
Ну вот только я определился с выбором, а Вы всё испортили
Продумывать варианты о которых не знаешь - это сложно. Что будет в будущем - неизвестно. Если мне скажут, что переписывай на .Net - я просто уволюсь
На начальном этапе я всё же буду использовать QString вместо std::string и использовать QList вместо std::list. А там посмотрим.
А вот вместо Qt-го вывода в консоль:
Код
C++ (Qt)
#include <QTextStream>
QTextStream
cin
(
stdin
)
;
QTextStream
cout
(
stdout
)
;
Лучше использовать std::cout Так как не придётся писать cout.flush(); Да и смысла не вижу использовать: QTextStream cout(stdout);
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: Классы на чистом C++ или Qt-way?
«
Ответ #9 :
Март 18, 2014, 08:34 »
Цитата: 8Observer8 от Март 18, 2014, 08:31
Ну вот только я определился с выбором, а Вы всё испортили
Просто не нужны крайности. В нашей отрасли все быстро меняется и к этому нужно стараться быть готовым.
Записан
8Observer8
Гость
Re: Классы на чистом C++ или Qt-way?
«
Ответ #10 :
Март 18, 2014, 08:36 »
Аааа, вот Вы о чём
Спасибо, учту
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Классы на чистом C++ или Qt-way?
«
Ответ #11 :
Март 18, 2014, 08:40 »
Цитата: 8Observer8 от Март 18, 2014, 08:31
и использовать QList вместо std::list
QList - вовсе не аналог std::list (в отличие напр от QVector - std::vector). Для ф-ционала std::list в Qt есть QLinkedList. Какая бы ни была специфика работы - контейнеры есть всегда. Поэтому изучать их надо тщательно, а не так, "поматросил и бросил" (убежал на СУБД)
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...