• Как сделать пользовательские маркеры на Google Maps?

    OrmaJever
    @OrmaJever Автор вопроса
    огромное спасибо! На вид именно то что надо!!
  • Драйвер для работы с postgres в с++?

    OrmaJever
    @OrmaJever Автор вопроса
    Олег Цилюрик: да я как бы понимаю что можно взять libpq, и обложить её своими классами и будет всё красиво, но их как бы нужно писать, потом тестить, я вот и спрашивал может есть что-то готовое? Какой-то умелец который взял стандартную Си либу и сделал под неё обёртку из классов с удобным интерфейсом
  • Драйвер для работы с postgres в с++?

    OrmaJever
    @OrmaJever Автор вопроса
    evnuh: спасибо, попробую!
  • Драйвер для работы с postgres в с++?

    OrmaJever
    @OrmaJever Автор вопроса
    Да, я знаю что есть обкатанное Си решение libpq, но я не хочу Си, меня не устраивает функциональный стиль, тягать за собой индификатор соединения, даёшь классы :) По поводу ODBC то мне по сути не нужно универсальное решение, бд будет только постгрес и я думаю мне нужны будут специфические особенности, от части именно по этому я и выбрал постгрес.
    То есть условия у меня как-бы 2
    1) с++ стиль с классами
    2) никаких универсальных методов, всё должно быть заточено чисто под постгрес с фишками и производительностью.
  • Драйвер для работы с postgres в с++?

    OrmaJever
    @OrmaJever Автор вопроса
    Я не нашёл там prepared statement, а без них я не могу. Пример коннекта я видел, но что-то более сложное, сами запросы, выборки.
  • Системные аллокаторы в php extension

    OrmaJever
    @OrmaJever Автор вопроса
    @jcmvbkbc у меня винда, попробовал запустить php в gdb (gdb.exe -nx -fullname -quiet -args path/to/php) пишет "no debuging symbols found", вполне логично, php то релизный. Как быть?
  • Системные аллокаторы в php extension

    OrmaJever
    @OrmaJever Автор вопроса
    @jcmvbkbc
    3) я предполагал что спросите, там всё в порядке я просто добавляю туда пару своих методов и переопределяю некоторые операторы. Я и так раньше наследовал std::string
    4) В этом то вся загвоздка, расширения php это динамические либы, я не представляю как их дебажить.

    С учётом пунктов 1 и 2 код вышел такой, но он всё равно падает :( уже даже не знаю куда смотреть :(
    class Ealloc : public std::allocator< char >
    {
    public:
    pointer allocate( size_type size, allocator::const_pointer ptr = nullptr );
    void deallocate( pointer , size_type );
    };
    // ...
    Data::Ealloc::pointer Data::Ealloc::allocate(size_type size, allocator::const_pointer ptr)
    {
    return ptr == nullptr ?
    static_cast< pointer >( emalloc(size) ) :
    static_cast< pointer >( erealloc(const_cast< void* >(ptr), size) );
    }

    void Data::Ealloc::deallocate( pointer ptr, size_type )
    {
    efree(ptr);
    }
  • Системные аллокаторы в php extension

    OrmaJever
    @OrmaJever Автор вопроса
    @jcmvbkbc изменил destroy на deallocate, но php всё равно падает. Падает так же на вызове newStr += '1', то есть с аллокатором что-то не так, но вот что. Мне кажется что переопределить 2 метода мало, наверное basic_string вызывает ещё что-то...