|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
|
Один раз компилируй, потом запускай как native03.01.2015, 17:41. Показов 1361. Ответов 14
Метки нет (Все метки)
У меня возникла не плохая идея.
C++ это native. Java managed code. Java компилирует и запускает приложение в операционной системе где есть JVM. А теперь идея: Пусть компилирует один раз, потом уже запускает без всяких JVM, а чисто native, тоесть как C++. Возможно?
0
|
|
| 03.01.2015, 17:41 | |
|
Ответы с готовыми решениями:
14
Можно ли один раз создать функцию в потоке, а потом просто вызывать ее Аsus z170-a и i5 6600k в один день монитор стал включаться через раз а потом вовсе не включается Не меняется картинка image в форме, один раз меняется, потом нет |
|
447 / 300 / 65
Регистрация: 12.10.2009
Сообщений: 1,162
|
|
| 03.01.2015, 18:00 | |
|
вы смысла JVM не понимаете, суть JVM - "один раз написал используем везде", проще написать 1 раз реализацию JMV для разных платформ чем пересобирать сотни и тысячи раз программы и библиотеки
0
|
|
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
||
| 03.01.2015, 18:18 [ТС] | ||
|
А я говорю, сохранить эти байты и запускать чисто на операционной системе без JVM. Видимо это иллюзия, так?
0
|
||
|
|
|
| 03.01.2015, 20:56 | |
|
Ziya, для этого надо встроить JVM в операционную систему.
вообще можно java преобразовать в native. Для этого есть http://www.excelsiorjet.com/ . Правда платно
0
|
|
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
|
| 03.01.2015, 21:07 [ТС] | |
|
Изучил и понял, это не иллюзия, а правда.
Вопрос: Как создать native C++ app и запускать везьде? 1. Использовать C++ core language или C++ Standard library (включает первое). 2. Компилировать для любой платформы отдельно у себя и потом запускать на них независимо. Вот и всё! Заключение: C++ великий язык с большим минусом - он сложный, сложнее чем Java и C#, потому что не managed. Но вы можете использовать C++ как managed, но он серавно будет сложным, потому что разработан как unmanaged. Спасибо за внимание!
0
|
|
|
447 / 300 / 65
Регистрация: 12.10.2009
Сообщений: 1,162
|
|
| 03.01.2015, 23:49 | |
|
Ziya, еще раз повторяю для не понятливых проще 1 (один) раз написать реализацию JVM для каждой платформы и после неморочить себе мозг пересборкой программ а просто переносить файлы собранного байт кода, и запускать их хоть в ОС ядерного реактора хоть в ОС стиральной машины, а любые сервисы перевода Java байт кода в native прибивают кривыми гвоздями программу к определенной ОС как пример - невозможно файл бинарного формата Debian/Ubuntu *.deb запустить из под Windows, а явовский *.class запустите и там и там лишь бы соответствующая JVM стояла в ОС
0
|
|
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
||
| 04.01.2015, 09:50 [ТС] | ||
|
Так что это намного проше: 1. Компилируй одной кнопкой для любой операционной системы автоматически без изменения кода. 2. Доступ ко всем API, если нужно. А также если копилятор установлен на чужой разной операционной системе, то пользователь сам или же автоматически, чтобы компилятор компилировал.
0
|
||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||||
| 04.01.2015, 10:25 | ||||||
|
Добавлено через 2 минуты Добавлено через 4 минуты Добавлено через 1 минуту Добавлено через 1 минуту 2. Разгрести результат и отобрать для каждой платформы именно её версию исполняемого кода будет тоже сложно.
0
|
||||||
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
||||
| 04.01.2015, 11:07 [ТС] | ||||
|
Если бы C++ был проше чем С#, то никто бы не учил C#, потому что: C++ это доступ ко всем API операционной системы. C# это managed, тоесть нет доступа ко всем APIs. Но если хотите компилировать программу автоматически одно кнопкой для любой операционной системы, для которого есть C++ компилятор, то обязательно нужно использовать кросс платформенные platform independent библиотеки, тоесть - C++ Standard Library. Всё чётко и ясно, я прав, могу дать ссылку, прочитаете.
0
|
||||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||
| 04.01.2015, 11:35 | ||||
|
Добавлено через 1 минуту Добавлено через 1 минуту
0
|
||||
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
||
| 04.01.2015, 12:33 [ТС] | ||
|
C# это managed и поэтому полного доступа ко всем APIs определённой операционной системы нет, хотя можно использовать Platform Invoke.
0
|
||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
| 04.01.2015, 12:39 | |
|
0
|
|
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
||
| 04.01.2015, 12:44 [ТС] | ||
|
к примеру есть операционная система Windows, могу ли я использовать C++ чтобы получить доступ ко всем функциям и всему API операционной системы? Я имею ввиду использовать C++ как язык и с помощью соостветствуещего компилятора писать программы для Windows используя все особенности, методы, классы, функции системы. Возможно?
0
|
||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
| 04.01.2015, 12:51 | |
|
Можно.
1
|
|
|
7 / 5 / 4
Регистрация: 02.06.2012
Сообщений: 248
|
||
| 04.01.2015, 12:54 [ТС] | ||
|
А вот C++ - это unmanaged, он может. Это то что я всегда думал, спасибо.
0
|
||
| 04.01.2015, 12:54 | |
|
Помогаю со студенческими работами здесь
15
Как сделать чтобы анимация запускалась каждый раз после нажатия на кнопку, а не один раз? как сделать, чтобы один раз можно было нажать кнопку, а второй раз уже лайк убирался, Как в один и тот же массив добавить сначала 5 значений потом 10?
Как распечатать в цикле один раз? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|