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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
#1

Что лучше использовать для низкоуровневого программирования? - C++

28.08.2012, 17:09. Просмотров 1624. Ответов 14
Метки нет (Все метки)

Здравствуйте, задался я вопросом, а что лучше использовать для низкоуровневого программирования (работы со звуком и буфером), + еще написать интерфейс программы?!
Программа написана на С++ с использованием WinApi, но не устраивает объём программки.
Что лучше использовать лучше, необходимые факторы: быстродействие и вес.
Что лучше WinApi, Assembler, .Net Framework, Phyton? Или забыть об этом и написать интерфейс с MFC?
Но тогда она будет много весить!
Или можно просто написать с Qt и добиться кросплотформенности?
P.s. Из списка знаю чуть-чуть WinApi. Что лучше использовать в асме будет быстрее?
С помощью чего лучше создать интерфейс проги?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.08.2012, 17:09
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что лучше использовать для низкоуровневого программирования? (C++):

Что лучше использовать для свойств объекта? - C++
Мне нужно хранить свойства каких то объектов. То есть, строка и для этой строки какое то значение В каком контейнере это лучше...

C++ vs C#. Что лучше использовать для поставленных задач? - C++
Приветствую всех. Интересует, что под мои задачи больше всего подходит. C++ либо C#. C++ манит своей скоростью, C#, своей простотой. ...

Какой язык программирования лучше использовать? - C++
Здраствуйте, мне нужно написать программу которая сможет выполнять след функции: 1. Собирать информацию с сайта, путем втавления ссылки ...

Что лучше использовать для строк? Массив char или же string? - C++
Только не давно начал изучать с++, подскажите что лучше использовать для строк? Массив char или же string? И могу я ограничить себя...

Что лучше использовать для работы со строками класс wstring или wchar_t напрямую? - C++
Всем привет! Мучает меня один вопрос: как грамотнее и безопаснее работать со строками: 1) Создавать экземпляр класса wstring и работать...

Что лучше использовать? Шаг переменной dx - C++
Есть описание функции. вот как я её сделал: if (abs(x) >= 10){ printf("Y(x)=%1.2f\n\n", y = x*x); } else {...

14
Пaтрик
416 / 391 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
28.08.2012, 17:19 #2
WinAPI: работать все будет быстро, но писать будите долго.
Assembler: вам жизни не хватит, что бы реализовать то что вы задумали.
.Net Framework: быстро весело, придется тянуть dotnet, и кроме винды нигде не запустите (ну еще mono)
Python: круто, быстро, медленно, в отличии от всего что компилируется.
MFC: шлак какой-то.
Qt: сплошь крутяки, кроссплатформенность, быстрота.
1
NoMasters
Псевдослучайный
1762 / 1105 / 73
Регистрация: 13.09.2011
Сообщений: 3,141
28.08.2012, 17:22 #3
Бэкенд на сях, фронтенд на чём удобней.
0
mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 09:54  [ТС] #4
Пaтрик, емкий ответ, но хотелось бы узнать что из этих трех вариантов лучше: Qt, WinApi, Python. А насчет фрамворка я знаю, просто никак не определюсь что лучше выйграш в скорости, но пройгреш в кросплотформенности или наоборот?! Или на Qt будет выйграш и в том и в том? И как Qt относиться к Winapi?
А то у меня вставки с Winapi?
0
Пaтрик
416 / 391 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.08.2012, 10:20 #5
Qt - это и скорость и кроссплатформенность. Qt относится к WinAPI плохо, потому что теряется переносимость.
0
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
29.08.2012, 10:30 #6
Цитата Сообщение от Пaтрик Посмотреть сообщение
WinAPI: работать все будет быстро, но писать будите долго.
Assembler: вам жизни не хватит, что бы реализовать то что вы задумали.
.Net Framework: быстро весело, придется тянуть dotnet, и кроме винды нигде не запустите (ну еще mono)
Python: круто, быстро, медленно, в отличии от всего что компилируется.
MFC: шлак какой-то.
Qt: сплошь крутяки, кроссплатформенность, быстрота.
Это как? Оо
0
NoMasters
29.08.2012, 10:35
  #7

Не по теме:

Цитата Сообщение от nexen Посмотреть сообщение
Это как? Оо
Быстро тормозит, не то что ява

0
Пaтрик
416 / 391 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.08.2012, 10:57 #8
Сори, быстро это относительно времени разработки.
0
mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 11:38  [ТС] #9
Хмм, тогда вопрос еще не закрыт! Каким же это чудом можно сделать на Qt без WinApi вставки?

Добавлено через 54 секунды
и в каком смысле переносимость? кросплатформенность?
0
Jupiter
Каратель
Эксперт С++
6558 / 3979 / 227
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
29.08.2012, 11:48 #10
Цитата Сообщение от mr_free Посмотреть сообщение
Каким же это чудом можно сделать на Qt без WinApi вставки?
что сделать?

Добавлено через 2 минуты
Цитата Сообщение от mr_free Посмотреть сообщение
и в каком смысле переносимость? кросплатформенность?
единый код для всех поддерживаемых платформ
1
mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 12:51  [ТС] #11
Jupiter, в самом начале я писал "работа со звуком и буфером". Так что выходит даже если я созданы проект на VS 2010 написаный на C++ с вставочками на WinApi, то кросплотформенности не будет?А в скорости выйграш будет?

Добавлено через 5 минут
Просто скажем так, сейчас все сделано средствами стандартной мультимедиа (winmm.dll), к формату, каналам и т.п. есть свои требования, данные из звуковой карты проходят оцифровку, потом записуються в буфер и выводят результат в файл. Какими средствами это можно реализовать в Qt, так что б и на винде работала нормально и на линуксе, сейчас понятное дело на линуксе она не пойдет.???
0
Пaтрик
416 / 391 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
29.08.2012, 12:59 #12
Цитата Сообщение от mr_free Посмотреть сообщение
то кросплотформенности не будет?
нет, потому что ВинАПИ - это винда.

Цитата Сообщение от mr_free Посмотреть сообщение
А в скорости выйграш будет?
зависит от того как напишите.

Цитата Сообщение от mr_free Посмотреть сообщение
Какими средствами это можно реализовать в Qt
http://ru.wikipedia.org/wiki/Phonon

Цитата Сообщение от mr_free Посмотреть сообщение
сейчас понятное дело на линуксе она не пойдет.???
если дело понятное зачем спрашивать
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.08.2012, 13:00 #13
Цитата Сообщение от mr_free Посмотреть сообщение
Jupiter, в самом начале я писал "работа со звуком и буфером". Так что выходит даже если я созданы проект на VS 2010 написаный на C++ с вставочками на WinApi, то кросплотформенности не будет?А в скорости выйграш будет?

Добавлено через 5 минут
Просто скажем так, сейчас все сделано средствами стандартной мультимедиа (winmm.dll), к формату, каналам и т.п. есть свои требования, данные из звуковой карты проходят оцифровку, потом записуються в буфер и выводят результат в файл. Какими средствами это можно реализовать в Qt, так что б и на винде работала нормально и на линуксе, сейчас понятное дело на линуксе она не пойдет.???
Вы сейчас сказали примерно такое: «Я говорю по-русски. Как можно используя сленг физиков-ядерщиков сделать так, чтобы меня понимали нормально и в России, и на Ямайке». Чтобы там понимали, придётся говорить на местом наречии (читай: использовать приблуды Qt для этого всего; благо, они есть).

Естественно, зависимость от WinAPI и стандартных виндовых *.dll = прибито к Windows намертво. (Мертвецов можно заставить ходить, но вы в курсе, как часто они падают.)

Не по теме:

И, умоляю, выигрыш.

0
mr_free
69 / 3 / 0
Регистрация: 08.08.2012
Сообщений: 223
Записей в блоге: 1
29.08.2012, 13:23  [ТС] #14
Хорошо, хорошо, буду стремиться к правильности. Не много запутал фразу или много??!
Я хотел узнать каким прекрасным образом, можно написать приложение (выше описанное), которое работает со звуком и буфером, чтоб оно работало отлично и на Виндовс и на Линуксе? И стандартные медиабиблиотека что используються в Qt отсутствуют в Виндовс, а главное требование, это чтоб без всяких подгрузок программка работала?
Насколько я знаю, работу со звуком на С++ можно реализовать двумя путями Winmm.dll (winapi) or DirectSound, но с директом свои заморочки и далеко не факт, что будет работать на всех ПК. (без подгрузки).
Так-что меня волнует, как написать так, что б работала на Винде?
Никогда не видел, что б прога специально написанная под Линукс работала и на Виндувс, это как небо и земля.
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
29.08.2012, 14:22 #15
Использовать библиотеки Qt и тащить dll-ки Qt вместе с программой. Не бойтесь тащить нужные dll-ки с программой. Для звука есть модуль QtMultimedia, для буфера... ну, смотря, что за буфер; если буфер обмена, то есть класс QClipboard.

В крайнем случае, если религия совершенно напрочь запрещает тащить dll-ки, можно с помощью такой-то матери прилинковать всё нужное статически (получить *.exe в пару десятков мегабайт).

Если вас волнует размер... ну перепишите только интерфейс на Qt/.NET/чём угодно, а всю работу со звуком так и оставьте под WinAPI, раз она уже написана, потом просто прикрутив её как мозги к интерфейсу.

Если же работу со звуком тоже надо переносить из Винды, то тут или писать с помощью %frameworkname%, который попрячет всё ОС-специфичное, и один и тот же код будет компилироваться и под Windows и под Linux. Или писать руками две библиотеки: одна с WinAPI для Винды, другая под... стопицот различных звуковых подсистем Linux.
0
29.08.2012, 14:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.08.2012, 14:22
Привет! Вот еще темы с ответами:

Что лучше использовать vector или массив - C++
Что лучше использовать и когда vector или массив ?

Что лучше использовать, #define или typedef? - C++
Вот привожу пример программы. Здесь можно и с #define сделать и с typedef. Программа в любом случае будет прекрасно работать. Там что же...

Что лучше использовать: string или char[]? - C++
Ребят, я только начинаю учить c++. Подскажите что лучше использовать string или же char

Что лучше использовать, матрицу или списки? - C++
Задание: Дан граф, определить является ли он связным. Подскажите пожалуйста, при выполнении этого задания лучше использовать матрицу...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru