• Размер класса в контейнере (например std::vector)

    @zvorygin
    А такое подойдет? -

    typedef std::vector<int> my_container;
    my_container v;
    size_t size = sizeof(my_container::value_type);

    Т.е. отталкиваться не от значений а от типа - что должно быть правильнее.
    Ответ написан
    3 комментария
  • Разработка API

    Lonkly
    @Lonkly
    >> как применительно к Java

    Лучше Java не применять к веб разработке. А по теме: учите JavaScript, сейчас на нем все строят
    Ответ написан
    7 комментариев
  • Примитивный модуль на C для Python течёт по памяти?

    @MikhailEdoshin
    Со списком все в порядке, проблема во взаимодействии функций. Py_BuildValue возвращает new reference, то есть объект со счетчиком ссылок, установленным в единицу, которым теперь владеет ваш код. Функция же PyList_Append не забирает у вас этот объект, а тоже увеличивает счетчик ссылок еще на единицу. Теперь у полученной строки будет два владельца — список и ваш код. Когда вы удалите список, он честно отнимет свою единичку от счетчика ссылок, но ваша-то там останется, поэтому Питон будет думать, что кто-то где-то эту строку еще использует.

    Вам нужно или явно уменьшить счетчик:

    PyObject *list, *item; /* static, право, ни к чему */
    list = PyList_New(0);
    item = Py_BuildValue("s"; "test");
    PyList_Append(list, item);
    Py_DECREF(item);
    return list;
    

    или же использовать функцию, которая не увеличивает счетчик (steals reference):

    PyObject *list;
    list = PyList_New(1); /* оставляем место для элемента */
    PyList_SET_ITEM(list, Py_BuildValue("s"; "test"));
    return list;
    

    (В данном случае я использовал макрос PyList_SET_ITEM, который как раз подходит для заполнения новых списков.)
    Ответ написан
    4 комментария
  • Парсинг ASP.NET (средствами python)

    AlexShkor
    @AlexShkor
    CTO at Paralect.com
    Не повезло вам однако. Страница написаная на ASP.NET да еще и не очень качественно — лучшая защита от парсинга =)
    Почти на каждое действие на ASP.NET странице идет пост формы, с помощью чего ViewState качует с клиента на сервер.
    Вам придется отправлять POST запросы на supplier.aspx при этом эмулировать ViewState и метод его энкриптинга.
    Теоретически задача решаемая, но я бы посоветовал найти другое решение вашей первоначальной задачи.
    Ответ написан
    2 комментария
  • Утилита для анализа http\https-соединений

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Fiddler здесь. Лучший на мой взгляд…
    Ответ написан
    Комментировать
  • Что печатает этот код?

    AxisPod
    @AxisPod
    Сам на собственном опыте помню, что при использовании тернарного оператора, условие и действия надо заключать в скобки, т.к. приоритет тернарного оператора ниже чем оператора ротации.
    Ответ написан
    Комментировать