|
5 / 5 / 1
Регистрация: 22.04.2015
Сообщений: 57
|
||||||
Написание кроссплатформенной библиотеки на C++02.01.2017, 14:46. Показов 5071. Ответов 27
Метки нет (Все метки)
Планируется написание кроссплатформенной библиотеки на C++ с возможностью подключения к C# для работы в Windows. В библиотеке будет функция, которая принимает строку как аргумент. Вопрос заключается в следующем какой тип данных из C++ лучше подойдет для работы со строками и как реализовать поддержку Unicode на Linux и Windows одновременно. Т.к. Unicode в данных системах отличается по размеру, занимаемому в памяти?
Пример планируемой функции:
0
|
||||||
| 02.01.2017, 14:46 | |
|
Ответы с готовыми решениями:
27
Создание 100% кроссплатформенной библиотеки
Написание библиотеки |
|
31 / 31 / 15
Регистрация: 02.02.2015
Сообщений: 152
|
|
| 14.01.2017, 16:11 | |
|
ANDANTINO, посмотрите Подключить dll на c++ к c# (DllImport)
0
|
|
|
5 / 5 / 1
Регистрация: 22.04.2015
Сообщений: 57
|
||||||||||||
| 14.01.2017, 17:21 [ТС] | ||||||||||||
|
wmaster575, то что вы предлагаете я умею делать. И другие функции из библиотеки хорошо работают. Проблема только с функцией, которая подключается через макрос:
И еще вопрос к Fulcrum_013, когда вы говорили про классы строк вы имели ввиду string и wstring и др.? Если да, то вы предлагаете что-то вроде: Первый вариант.
0
|
||||||||||||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 14.01.2017, 17:44 | ||
|
Вариантов подменить тип в зависимости от дефайна целевой платформ в С++ есть два. Оба вы написали. при этом лучше пользовать с typedef. Он видит скопы и т.д. и т.п. т.е видится именно компилятором именно как тип а не как макроопределение которое вы видите один текст а компилятор совсем другой.
1
|
||
|
5 / 5 / 1
Регистрация: 22.04.2015
Сообщений: 57
|
||||||
| 14.01.2017, 19:42 [ТС] | ||||||
|
Fulcrum_013, а стандартные классы std для работы со строками подойдут, такие как string или wstring?
И что вы думаете про такой вариант? Конечно он больше под Windows орентирован, но все же.
0
|
||||||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||||
| 14.01.2017, 20:06 | ||||||||
0
|
||||||||
|
5 / 5 / 1
Регистрация: 22.04.2015
Сообщений: 57
|
|
| 14.01.2017, 20:37 [ТС] | |
|
Fulcrum_013, большое спасибо за помощь и четкие ответы.
Пойду продумывать архитектуру библиотеки с новыми знаниями по теме.
0
|
|
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 14.01.2017, 20:45 | ||
|
0
|
||
|
5 / 5 / 1
Регистрация: 22.04.2015
Сообщений: 57
|
|
| 14.01.2017, 20:54 [ТС] | |
|
Fulcrum_013, еще раз спасибо за совет. На С++ давно не писал, перешел на C#, поэтому не все помню, а тут как раз задача нужно чужой код на С++ обернуть в dll-библиотеку и подключить к C#. Думаю, основные трудности уже преодолены осталось полегче задача.
0
|
|
| 14.01.2017, 20:54 | |
|
Помогаю со студенческими работами здесь
28
Написание библиотеки Java
Написание библиотеки для воспроизведения MP3 Написание dll - библиотеки и ее открытие средствами Delphi Как сделать программу кроссплатформенной? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка SDL3, Box2D, FreeType и SDL3_ttf из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|