Ioann_
К слову open cv - это и есть мы от части. Только эта самая часть в 2005 году была сокращена, и отделилась в itseez как следствие. Не выгодно это было тогда :)
Matwey
Не похоже, что продажники
Вообще как-то чисто подозрительно на столе.
ep
И насколько я знаю, в Itseez работа была интересна разве что студентам, потмоу как платили они какие-то смешные деньги.
Ioann_
Я во всю байду эту особо нелез. Но все это называлось как то НСТЛ
Ioann_
И мы были частью интела в т.ч по сути. Так как располагались в т.ч на 9 этаже их офиса в нн. Потом что то произошло, потом еще что то и вуаля капвидиа стала Бельгийской
Pavel
Кто-нибудь знает в чем дело ?
ты неправильно юзаешь strand. я там выше ответил
Alexander
ты неправильно юзаешь strand. я там выше ответил
пропустил сообщение, еще раз попробую...
Alexander
ты неправильно юзаешь strand. я там выше ответил
не понял почему не так использую, пример взят с https://habrahabr.ru/post/195006/
Pavel
4 года статье. может апи поменяли, незнаю
Pavel
хотя я вот какраз года 4 назад читал доки по асио и там, кажется, было ровно тожесамое что и сейчас
Pavel
This function is used to create a new handler function object that, when invoked, will automatically pass the wrapped handler to the strand's dispatch function.
Pavel
у тебя получилось что сервис вызывает хендлер который создал врап как попало. и вот в этом как попало порядке оно потом уже и диспатчится через странд
Pavel
а надо просто post, который Request the strand to invoke the given handler and return immediately.
Pavel
ну а диспатч это с блокировкой соотв
Pavel
там же всё просто. два предложения в доках
Alexander
действительно, спасибо.
Ned
Парни. Нужен спец в кросс-компиляции для разъяснительной беседы в личку. Срочно!
Vladislav
зачем в личку?
Matwey
А cmd.exe и powershell различаются по поведению?
Berkus
@AlexFails это в цитатник
Berkus
для инвалидов которые не умеют в линковку
Pepe 🐸
SMedX
Спасибо
Dr. Friedrich
Вы всё делаете неправильно. Не нужно никаких 866, не нужно никаких 1251. В 2017 году нужен только юникод.
Dr. Friedrich
Виндовая консоль работает с юникодом, как и консоль на других ОС. К сожалению, ей приходится для этого подкинуть пару подпорочек, это да.
Dr. Friedrich
А cmd.exe и powershell различаются по поведению?
Оба из них — всего лишь шеллы, а терминал там conhost, он одинаковый.
Dr. Friedrich
(но поведение шеллов, безусловно, может различаться, покуда ты в них работаешь — в том числе и по отношению к кодировкам)
Anonymous
а из кода, я так полагаю, мне надо делать system("chcp что-то-там")?
Anonymous
или в Win API какая-то штука для этого есть?
Matwey
или в Win API какая-то штука для этого есть?
Ну chcp же через какой-то API это делает?
Dr. Friedrich
Я тут упустил что-то, подпорочки какие надо?
Навроде вот этого: https://github.com/ForNeVeR/MsiHelper/blob/bcfa399414ccd16129d1a86b57a6f90ce74b3b39/MsiHelper/MsiHelper.cpp#L116
Dr. Friedrich
Вот с этой фигнёй wcout начинает работать.
ep
Ну chcp же через какой-то API это делает?
https://stackoverflow.com/a/9051543/419926 Как-то так
Dr. Friedrich
А я там дальше показал подпорочку.
Dr. Friedrich
wcin / wcout в винде работают концептуально лучше, чем cin / cout.
Dr. Friedrich
С костылями, конечно :)
Dr. Friedrich
Мы всё это обсуждаем каждый раз, когда кому-то хочется писать кириллицу в виндовую консоль. Сделано там у них всё дико неинтуитивно, тут не поспоришь.
Matwey
Мы всё это обсуждаем каждый раз, когда кому-то хочется писать кириллицу в виндовую консоль. Сделано там у них всё дико неинтуитивно, тут не поспоришь.
А если запустить в виндовой консоле этот их новомодный контейнер с линуксом? В нем будет такая-же ерунда с кодировками?
Dr. Friedrich
Во всяком случае, основные команды, которые возвращают юникод, работают нормально. Я уж не знаю, само оно перекодирует в UTF-16, или там что-то ещё хитрее сделано.
Dr. Friedrich
Они там даже ANSI-коды прикрутили немножко.
Dr. Friedrich
ни разу их не юзал. в чем они лучше?
Ну, они работают. Больше ничем не лучше :)
Dr. Friedrich
Твоя это в 1251?
Dr. Friedrich
Она ломается, когда тебе нужно выводить текст в какой-то другой кодировке.
Dr. Friedrich
только в Винду умеют?
Нет же, это стандарт.
Dr. Friedrich
Просто, ну, wchar_t сам по себе — достаточно костыльная вещь. В стандарте не указано, какая там должна быть кодировка, и какого размера эти символы должны быть. Поэтому всё это хозяйство очень сильно полагается на реализации :(
Dr. Friedrich
В Linux это 4-байтовые символы, и я боюсь даже предположить, как кодировка в std::wcin зависит от локали.
Evgenii
просто надо уничтожить все кодировки кроме utf8 и все
Andrey
надо будет почекать, а то привык к std::cin/cout
Andrey
да и ещё больше к qDebug()
ttldtor
я бы ещё byte order и call convetions уничтожил
Dr. Friedrich
Я не уверен, что ты понимаешь проблему.
Dr. Friedrich
Я хочу вывести строку "привет, 漢語"
Dr. Friedrich
Ну, русско-китайский словарь пишу, например.
Dr. Friedrich
В какой однобайтовой кодировке мне эту строку выводить, а?
Square
http://kunststube.net/encoding/
ttldtor
В какой однобайтовой кодировке мне эту строку выводить, а?
давай добавим смешанную culture и можно закапывать
Dr. Friedrich
давай добавим смешанную culture и можно закапывать
Что значит «смешанная culture»? Ты специально так написал?
Dr. Friedrich
«Давай заддоним смешанную калчер и мэй закапывать» — Ъ смешанная culture.
Ioann_
А как, собственно работать с Уникодом в консоли у Винды ?
Ioann_
Я вот честно - не знаю, могу конечно прогуглить все это дело, но черт побери, тут же тоже можно задавать вопросы
Ioann_
Так что накиньте кода, который работает именно с UTF 8
Ioann_
И все это в консоленьку Виндовую закидывает
Dr. Friedrich
А как, собственно работать с Уникодом в консоли у Винды ?
Последние дня три мы это обсуждаем. Выше я привёл ссылку на приложение, которое православно печатает юникодовый список всех установленных прог из MSI. TLDR: - _setmode(_fileno(stdout), _O_U16TEXT); в начале программы - используешь std::wcout и std::wprintf везде
Matwey
@fvnever ты мне объясни зачем в виртуальном терминале экономить байты? выдавай каждый символ хоть 8-байтным кодом сразу