procxx | Unsorted

Telegram-канал procxx - pro.cxx

7838

C++ chat 0. Простые вопросы, лабы и о IDE — в чат новичков @supapro 1. No Ads, offtop, flood 2. Полные правила тут https://t.me/ProCxx/259155 Объявления о вакансиях,эвентах - в лс @AlexFails или @MasterZiV канал вакансий https://t.me/ProCxxJobs

Subscribe to a channel

pro.cxx

Если имеется ввиду просто вернуть std::string, то это не прокатит

Читать полностью…

pro.cxx

#include <stdio.h>
#include <math.h>

// Possible implementation of the tgmath.h macro cbrt
#define cbrt(X) _Generic((X), \
long double: cbrtl, \
default: cbrt, \
float: cbrtf \
)(X)

int main(void)
{
double x = 8.0;
const float y = 3.375;
printf("cbrt(8.0) = %f\n", cbrt(x)); // selects the default cbrt
printf("cbrtf(3.375) = %f\n", cbrt(y)); // converts const float to float,
// then selects cbrtf
}
https://en.cppreference.com/w/c/language/generic

Читать полностью…

pro.cxx

Это не то. Это, скорее, в тему перегрузки.

Читать полностью…

pro.cxx

Дак а как строку вернуть из someMethod?

Читать полностью…

pro.cxx

Куда мне идти со своими вопросами по opengl? Подскажет кто?

Читать полностью…

pro.cxx

Ну да, там очень интересные вещи юзаются. Доку когда читаешь — вообще качаешься от некоторых моментов, например GQuark.

Читать полностью…

pro.cxx

Конечно это очень хорошая либа, но когда я впервые с ней столкнулся -- было страшно

Читать полностью…

pro.cxx

Да, только вот хотел про нее сказать. Но с неподготовленного глаза может пойти кровь)

Читать полностью…

pro.cxx

Библиотека GLib успешно этим занимается уже который год.

Читать полностью…

pro.cxx

+
В Си вполне можно эмулировать ООП и даже полиморфизм с помощью структуры с полями и указателями на "методы". Только вот инициализацию и очистку придется делать ручками.

Читать полностью…

pro.cxx

Что касается плюсовых контейнеров, то да, придётся данные копировать в примитивные типы или в какие-то POD-структурки:
std::string -> char*
std::list -> LIST_HEADER + LIST_ENTRY (Windows only)
Ну и так далее, надо просто найти/создать подходящие по смыслу обёрточки
Если же это класс с реализацией, то можно в принципе создать экземпляр, а вернуть void*, который потом в приложении скастить к нужному типу (например, если из DLL надо получить что-то)

Читать полностью…

pro.cxx

Это слишком общий вопрос, делать надо по разному.

Читать полностью…

pro.cxx

у меня какой то такой воркфлоу стандартный для подобных задач

Читать полностью…

pro.cxx

ну так интерпретатор можно запаковать через pyinstaller)

Читать полностью…

pro.cxx

Как делать сишное апи поверх с++? К примеру, функция возвращает std::string. Делать strdup? С остальными данными также или есть лучше способы?

Читать полностью…

pro.cxx

Во-первых, это не макрос, а ключевое слово языка. Во-вторых, изобразите мне с помощью этого что-нибудь типа std::enable_if

Читать полностью…

pro.cxx

нет, женерик это как раз про шаблоны)

Читать полностью…

pro.cxx

Просто берёшь и возвращаешь. RVO справится.

Читать полностью…

pro.cxx

@prographon

Читать полностью…

pro.cxx

Простите за оффтоп, кстати, больше не буду, пожалуй.

Читать полностью…

pro.cxx

Просто я был к такому не готов)

Читать полностью…

pro.cxx

Та не, это хорошая и даже удобоваримая либа.

Читать полностью…

pro.cxx

Што поделать: в Си шаблоны не завезли.

Читать полностью…

pro.cxx

Можно, только я видел насколько много макросов для этого приходится городить

Читать полностью…

pro.cxx

Зачем POD-ы. Я вообще вон писал код из серии типа
MyLibInstance* CreateMyLibInstance(...);

Ну и потом вызывал методы как-то через someMethod(mylibInstance, ...); что семантически было идентично mylibinstance->someMethod(...);

Читать полностью…

pro.cxx

сишное api обычно не через strdup возвращает строки, а через параметры

Читать полностью…

pro.cxx

pyinstaller --onefile -чет вроде такого, ну и там еще можно либы всякие, иконки и тд подтащить - читайте хелп

Читать полностью…

pro.cxx

обычно из питона требуется плюсовый код заюзать, а не наоборот, через pybind11 компилится плюсовый модуль питоновский, импортируется это в скрипт-обвязку и через pyinstaller со всеми интерпретаторами и ресурсами запаковывается в экзешник

Читать полностью…

pro.cxx

с ним правда повозиться немног придется возможно, но вроде то что надо

Читать полностью…

pro.cxx

pybind требует рантайм питона, а то про что я говорю - это создание независимого от него бинарника

Читать полностью…
Subscribe to a channel