Появилась тут вдруг необходимость связать 2 приложения на С++ и на Python между собой. После недолгих раздумий был выбран вполне очевидный вариант - HTTP(s) + json. Human readable, удобно тестировать и всё такое прочее. API было решено строить на базе REST (хоть и на не совсем идиоматичном), ибо он сейчас модный и хипстерский. Можно было бы сделать всё к примеру на SOAP, но боюсь потом спать не смогу. Ещё хотелось отметить, что сервером является приложение на С++, проекты находятся в разных репозиториях и есть вероятность, что в дальнейшем Python часть будет делать человек не знающий плюсы.
Показаны сообщения с ярлыком cpp. Показать все сообщения
Показаны сообщения с ярлыком cpp. Показать все сообщения
понедельник, 21 марта 2016 г.
воскресенье, 14 июня 2015 г.
Компиляторы иногда ругаются по делу
Буквально только что натолкнулся на забавную особенность языка C++, уже встречался с ней раньше, но каждый раз удивляет. Имеем вот такой код:
Компилятор объявление переменной интерпретирует как объявление функции, считая его эквивалентом вот этого:
void foo(uint32_t v) { ... CTimeout t(std::chrono::seconds(v)); ... }
CTimeout t(std::chrono::seconds v);Т.е. он просто решил, что скобки тут лишние и убрал их. Искать такую ошибку в большом проекте можно очень долго. К счастью компиляторы сейчас пошли умные и о таких ситуациях предупреждают (по крайней мере clang), хотя и компилируют. Но когда проект компилируется с парой сотен ворнингов, отыскать важный сложно. Выводу, я думаю очевидны.
Подписаться на:
Сообщения (Atom)
