Dmitry
C++17 is now officially published as a standard 🍾
Columbus
Еееее
Demon
Доброе утро кодеры! Всех с праздником - днем памяти Александра Невского. Подскажите, где найти хорошего кодера на C++ в Qt на постоянную работу?!
Aleksandr
на HH
Aleksandr
есть канал
Aleksandr
https://t.me/ProCxxJobs
Aleksandr
попробуй через него
Demon
Спасибо
Igor
ещё раз, проблема в том что кланг-формат по какой-то своей причуде решает, что строки с b и d нужно ВНЕЗАПНО выровнять с предыдущими, хотя там должен быть ровно один таб
при этом строки с a1, a2, e, f форматируются норм
не исключаю, что это какой-то баг моей версии, но под рукой только один комп с виндой, сравнить не с чем
на линуксовом 5.0 то же самое, ну как минимум это не виндовый баг, хм
Viktor
Всем ку.
Я на борланде 6 использую IdHTTP + IdSSLIOHandlerSocketOpenSSL. Использую GET API чтобы получить json. при этом url содержит обращение к 8443 порту. Сервер возвращает внутреннюю ошибку сервера 500. Хотя из браузера все отлично открывается.
свойства хоста и порта прописал. URL получаю GETом, там тоже пишу порт.
Искал примеры, как получить данные методов GET по HTTPS+port, везде или просто HTTPS или какой-нибудь получатель почты, сюда не имеющий отношения.
Подскажите где ошибка может быть?
Egor
Код в студию. Из приватного режима браузера тоже открывается? Например, могут быть Cookie или сайт может детектировать User-Agent и работать только с браузерами.
Viktor
Из приватного работает. А вообще это GET API, он и рассчитан, что не из браузера данные должны запрашивать. Код простой, работает если обращатться без порта. А с портом не пашет
Viktor
AnsiString resp=IdHTTP1->Get("https://cryptottlivewebapi.xbtce.net:8443/api/v1/public/currency");
Memo1->Text=resp;
Egor
У меня через Wget тоже не работает. Полагаю, что User-Agent
Viktor
Ща проверю
Egor
Не, смешнее: он хочет заголовок Accept-Encoding
Egor
Причём чтобы там содержалось либо gzip, либо deflate
Egor
identity не умеет
Egor
Если IdHTTP умеет работать со сжатием трафика — вам повезло. Если не умеет — не повезло.
Egor
Выяснил так: берём все заголовки, который браузер отправляет на сервер и он отвечает; пихаем в wget; по одному удаляем, пока не придём к неуспеху.
Viktor
Недавно читал мануалы, там было что-то про сжатие, так что думаю умеет. Спасибо!)
Viktor
7 лет на c++ не работал, всё забыл, качнул новую среду, удивился как всё поменялось, не разобрался сходу и вернулся на bc++. Но там тоже пока вспоминал - геморняков нахватался. Сейчас поставлю ещё раз - попробую разобраться что там поменялось
Viktor
Matwey
Ну видимо, среду 6 декабря
Viktor
Microsoft Visual. Сбежал бы быстрее, но проект надо быстро сделать, вот и решил на проверенном работать
Nikolai
Arseny
Может кто-нибудь знает, как в cmake статическую библиотеку и все ее зависимости объединить в один архив?
Arseny
Ну то есть в cmake примерно так:
add_library(a STATIC a.cpp a.h)
add_library(b STATIC b.cpp b.h)
target_link_library(b PRIVATE a)
А теперь хочется откуда-то взять библиотеку b_full, которую можно отдать наружу. Например, в install.
Все что я нашел, это всякие вызовы ar ручками и прочая ересь. И предложение использовать OBJECT вместо STATIC в add_library, что жутко неудобно.
(стоит заметить, что если b SHARED, то проблемы нету)
Berkus
Berkus
статическая либа это просто коллекция объектников
Berkus
а шаред либа - нет
Berkus
add_library(a OBJECT a.cpp a.h)
add_library(b OBJECT b.cpp b.h)
add_library(b_full STATIC a b)
наподобие такого
Arseny
Так хочется везде использовать STATIC, это понятней выглядит и до самого последнего шага удобней.
Berkus
Berkus
то что предлагают делать через ar ручками - это создание OBJECT либы из STATIC, тупо же
Berkus
одну и ту же работу по кругу повторять
Arseny
Но со STATIC все зависимости и флаги разрешаются CMake-ом.
А с OBJECT библиотекой нельзя сделать target_link_libraries и подтянуть все эти зависимости.
Berkus
Arseny
нет, не разрешаются, ты что-то путаешь
add_library(a STATIC a.cpp)
target_link_libraries(a PUBLIC c)
target_include_directories(a PUBLIC a_include)
add_library(b STATIC b.cpp)
target_link_libraries(b a)
К b будет линковаться c. И при сборке b будет использоваться флаг -I a_include.
Я про это.
Berkus
к Б ничего не будет линковаться, т.к. b это статическая либа - ака коллекция объектников
Berkus
к ней ничего не линкуется, она линкуется к экзешнику
Arseny
Да. Но все равно эти зависимости тянутся.
Daniil
да
Arseny
У меня как раз и проблема в том, что я хочу сделать b_full, который как статическая библиотека будет содержать все эти зависимости.
Arseny
Причем внутри самого cmake он мне не нужен. Только для install
Ender
Ну с простыми типами работает
Ender
До 11го.
Ender
Дальше не проверял.
kitsu
в 14 тоже значит должен работать
Ender
Можешь сделать себе массив даблов, и взять таким образом чё тебе надо.
Berkus
c оверлоадами будут трудности я думаю
Berkus
1["abcde"] это оверлоад operator[] для инта
B
для инта нельзя оверлоад сделать, кажется
ttldtor
1<:"abcd":>
Александр
Кстати, почему в 17х плюсах удалили триграфы, а диграфы оставили?
Igor
кажется наличие триграфов не давало ввести какую-то фичу, но это не точно, нужны более знающие люди
Dr. Friedrich
Наверняка опять IBM лютует. У них тонны кода, который юзает диграфы и триграфы, насколько я помню, поэтому они всегда были против того, чтобы их убрать.
Anonymous
Нахер их вообще использовать?
Dr. Friedrich
Нахер их вообще использовать?
В восьмидесятом году кто-то нахреначил кода с ними, похоже, и теперь исправить очень дорого по непонятной причине. Может быть, потеряли доступ в CVS :)
ttldtor
There are additional specific technical problems for EBCDIC which is one of the main
constituent, but we will not list them here as we believe the above report serve as
powerful reasons to not deprecate trigraphs
Anonymous
PRoSToC0der
когда видос с саттером выложат?
Alexander "SonnySlave"
Berkus
Berkus
Alexander
Подскажите, если задефайнил переменную, как правильно проверять ее через if дерективу?
Так не работает
#define DEBUG TRUE
#if DEBUG
// mycode
#endif
Alexander
Вернее работает, но значение что TRUE что FALSE роли не играет
ttldtor
Anonymous
.text:00000001400010F6 xor ecx, ecx ; hWnd
.text:00000001400010F8 call cs:__imp_MessageBoxA
.text:00000001400010FE xor r9d, r9d
кто нить может обьяснить зачем компилер генерит такой код?
Anonymous
я тупой прост
Anonymous
смысл в xor ecx, ecx?
Aleksei
занулить
KosBeg
обнуляет его =)
по куску кода ничего не скажу
Alexander
Anonymous
а
сам разобрался
оптимизация
вместо
mov ecx, 0
KosBeg
ну да, обнуляет
Alexander "SonnySlave"
https://bincrafters.github.io/2017/12/05/Conan-Profiles-and-Build-Requires/