Re[13]: Новости C#13. params
От: Shmj Ниоткуда  
Дата: 23.10.24 16:07
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>>Ссылка на функцию стандартизирована.

S>. А ссылка на объект класса — нет, не стандартизована. VMT не стандартизована. Обработка исключений не стандартизована. Менеджер памяти не стандартизован. Примерно ничего из того, что может захотеться использовать в С++-библиотеке, не стандартизовано.

Чтобы работать с объектом класса — используете хандлер.

Потом в метод передаете хандлер первым параметром и данные как в инстациональный метод. Все просто.

Вместо исключений — коды ответов + описание (если нужно).

Очистку памяти делаете специальными функциями.

Внутри же библиотеки можете использовать все возможности — ограничение только на верхнем уровне. И это правильно — чтобы была возможность универсального доступа из 6 платформ — так нужно сделать.

S>>Выше написал — нет сборщика мусора под все платформы

S>от повторения ваше заблуждение не станет ближе к истине. Под какую из платформ вы не нашли CLR?

Под iOS и Android.

S>>и возможности собрать стандартную .net-библиотеку под все платформы.

S>Есть такая возможность. Аж два раза: можно запаковать в "библиотеку" зависимость от .net runtime, и поставлять байткод. А можно собрать из библиотеки .dll/.lib под нужную платформу при помощи NativeAOT.

Покажите как это сделать. Чтобы были скрипты сборки под все платформы и генерация h-файла для использования из любого языка.

S>>А C++ — все можно. Даже важные сторонние библиотеки все собираются под все платформы — тот же boost.

S>Вы путаете две ортогональных вещи: кроссплатформенность и межъязыковую совместимость. Оттого, что boost можно "собрать" (на самом деле — нельзя) под все платформы, он не станет доступным из кода на Java или Object Pascal. "

Boost можно собрать под все платформы и использовать в своей C++ -библиотеке. А чтобы использовать уже вашу библиотеку в других языках — пишется FFI-интерфейсы — читай методы на голом C. И это то немногое, с чем могли договорится все народы мира.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.