Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 602 | 15 | 116
Назад Вниз Каталог Обновить

C+ #55 Аноним 05/07/17 Срд 03:21:08  1016662  
2edf96d6bcfac10[...].jpg (74Кб, 638x960)
Вместо шапки - https://github.com/sosachbot/cppthreadhat/wiki
Ответы на все вопросы - http://en.cppreference.com/w/ http://www.cplusplus.com/reference/

Прошлый >>1006097 (OP)

Теги: плюсы, cpp
Аноним 05/07/17 Срд 03:23:51  1016664
>>1016662 (OP)
>C+ #55
Не мог не обосраться.
Аноним 05/07/17 Срд 03:26:31  1016665
>>1016664
Впрочем, это ещё в прошлом треде.
Аноним 05/07/17 Срд 03:26:51  1016666
>>1016666
Аноним 05/07/17 Срд 03:35:32  1016669
>>1016664
>>1016665
>>1016666
смажь мазью свою попку и ложись баеньки))
Аноним 05/07/17 Срд 03:36:19  1016670
>>1016669
> пук
Аноним 05/07/17 Срд 10:26:29  1016769
>>1016662 (OP)
Плюсы или джаву выбрать?
Аноним 05/07/17 Срд 10:31:25  1016771
>>1016664
Это такой траленг от хуйтера ситхов.
Аноним 05/07/17 Срд 11:25:23  1016787
>>1016771
Это шизик из старых тредов бомбит, что картинку поменяли.
Аноним 05/07/17 Срд 11:26:56  1016788
>>1016769
Джаву. Плюсы уже не нужны в 2017
Аноним 05/07/17 Срд 12:07:59  1016801
Сначала вкатиться в Си, а потом в кресты, или наоборот?
Аноним 05/07/17 Срд 12:27:17  1016816
>>1016801
Кресты это си с классами. Начни с си, потом классы освоишь.
Аноним 05/07/17 Срд 12:57:52  1016832
>>1016788
хочу драйверы для микроволновок писать
Аноним 05/07/17 Срд 12:58:54  1016833
Что скажите по Си--?
Аноним 05/07/17 Срд 13:18:24  1016854
>>1016832
Драйвера не пишут на крестах.
Аноним 05/07/17 Срд 13:39:31  1016858
>>1016801

Вот таких плесневелых главное не слушай, >>1016816 , си с классами у него, охуеть вообще, на улице перестройка и играет ласковый май. Ныряй сразу в кресты, причем именно в 11, пока забей на более ранние и более поздние.
Аноним 05/07/17 Срд 14:54:38  1016911
>>1016858
Ну можно и так, если "прямо сейчас" надо вкатиться.
А по хорошему бы конечно, начать с Си.
Аноним 05/07/17 Срд 14:59:49  1016914
>>1016911
Нахуя если это взаимозаменяемые языки разошедшиеся по синтаксису лет как десять?
Аноним 05/07/17 Срд 15:20:53  1016919
>>1016914
> взаимозаменяемые языки
Ты уверен?
Аноним 05/07/17 Срд 15:44:58  1016931
Мне нужно чтобы статическая функция возвращала большой объект, как это сделать, чтобы объект не копировался, без поинтеров?

class BS {
    char buffer[65536];
    static BS getRandom() {
        BS bs;
        //fill buffer with random data
        return bs;
    }
}
Аноним 05/07/17 Срд 15:53:54  1016938
>>1016931
По указателю передавай (через std::unique_ptr, например или просто указатель (не забудь выделить память). А вообще в таких случаях, как правило, компилятор применит RVO (Return Value Optimization) и будет писать твой BS в стековом фрейме одного из предыдущих вызовов. Так что можешь не запариваться.
Ну а для больших объектов придумана куча.
Аноним 05/07/17 Срд 15:56:08  1016941
>>1016931
Референс возвращай, дебичь
Аноним 05/07/17 Срд 15:57:23  1016943
>>1016931
...
static void getRandom(BS& bs) { /fill buffer/ }
...
BS bs;
BS::getRandom(bs);
Аноним 05/07/17 Срд 15:58:58  1016946
Посмотрите код, в чем проблема?

else :false
if Billy=лох else 0 :approveded
...............
range(i=0, k=2, x=b)
b:onload

Write:"Billy fuccking veryfecalishhiet"
Print ("Billy fuccking veryfecalishhiet")

end.
Аноним 05/07/17 Срд 16:01:27  1016948
>>1016946
Что-то на французском. Не пойму ничего...
Аноним 05/07/17 Срд 16:11:09  1016951
>>1016941
Дебич тут только ты.
Аноним 05/07/17 Срд 16:31:37  1016956
>>1016951
НЕТ ТЫ, МАМ СКАЖИ ЕМУ
Аноним 05/07/17 Срд 16:44:05  1016964
Как суметь прочитать огромное количество страниц (1000) и при этом не сойти с ума?
Аноним 05/07/17 Срд 17:14:57  1016979
>>1016801
>Сначала вкатиться в Си, а потом в кресты, или наоборот?
Нахрен вы задаёте вопросы, на которые уже отвечали столько раз, что решили вынести в faq?
https://isocpp.org/wiki/faq/how-to-learn-cpp#learning-c-not-a-prereq

>>1016787
>Это шизик из старых тредов бомбит, что картинку поменяли.
Если бы ты не был полным дебилом, то понял бы, что я:
1. Бомблю не из-за картинки, в первую очередь.
2. Вообще не бомблю, в нулевую очередь.
Кстати, к шизофрении я не особо склонен.

>>1016832
>хочу драйверы для микроволновок писать
Их на Java пишут. Если ты почитаешь историю этого языка, то узнаешь, что его изначально создавали для микроконтроллеров бытовой техники.
Аноним 05/07/17 Срд 17:15:03  1016980
>>1016964
Что читаешь?
Аноним 05/07/17 Срд 17:16:31  1016982
>>1016964
>Как суметь прочитать огромное количество страниц (1000) и при этом не сойти с ума?
Большинство читало больше и не сошло. Всё зависит от того, за какое время и каких страниц.
Аноним 05/07/17 Срд 17:17:10  1016983
>>1016980
Стэнли Липпман, Жози Лажойе и Барбара Му Язык программирования C++

Но думаю сначала прочитать прату по с++, а затем вернуться к этой книге.
Аноним 05/07/17 Срд 17:17:51  1016984
>>1016982
>>1016983

Насколько быстро можно это прочитать? Просто я за весь месяц прочитал всего лишь чуть более ста страниц.
Аноним 05/07/17 Срд 17:29:59  1016989
>>1016983
За неделю.
Аноним 05/07/17 Срд 17:32:40  1016990
>>1016989
Как? Один я такой слабоумный, что
> Просто я за весь месяц прочитал всего лишь чуть более ста страниц.
Аноним 05/07/17 Срд 17:33:36  1016992
>>1016990
Ты наверное в дотку играл этот месяц.
Аноним 05/07/17 Срд 17:45:51  1016994
>>1016992
Нет, я и до этого пытался читать книги по C#, джаве, питону, но все читалось как-то очень медленно.
Аноним 05/07/17 Срд 17:52:13  1016997
>>1016994
Родители курят/пьют?
Как беременность протекала нормально? Травм не было?
Аноним 05/07/17 Срд 17:53:15  1017000
>>1016994
Может ты hanjubasom балуешься?
Парнишка один при мне стоял у подъездной двери и вспоминал в какой квартире он живет.
Аноним 05/07/17 Срд 17:59:52  1017009
>>1016997
Когда я родился родители не пили и не курили.
Насчет беременности мать сказала, что все было нормально. Хотя в глубоком детстве меня иногда водили на энцефалограммы и к невропатологу, не знаю зачем.
>>1017000
Ничем не балуюсь.
Аноним 05/07/17 Срд 18:35:10  1017023
>>1017009
Бло, братан я даже хз тогда. Если ты не совсем нуб, то книги должны легко идти. Простое быстро пролистывай, сложное разберай. Если совсем не варит котелок, оставь закладку и потом вернись перечитать.
2 месяца 100 страниц читать это даже хз как назвать.
Может у тебя мотивации нет?
обычную закладку в книгу, не ту что подумал тц майор
Аноним 05/07/17 Срд 18:47:44  1017027
>>1016938
Только не RVO, а NRVO (Named Return Value Optimization)
Аноним 05/07/17 Срд 21:41:11  1017125
>>1017023
>2 месяца 100 страниц читать это даже хз как назвать.
Может он там все упражнения решает.
Аноним 05/07/17 Срд 22:02:31  1017142
>>1017125
В том то и дело, что упражнения даются очень легко и быстро, но текст читаю очень медленно.
Аноним 05/07/17 Срд 22:32:24  1017166
p01391.jpg (1898Кб, 3409x3513)
Ньюфаг вкатывается в тред с дебильным вопросом.
Почему нужно использовать переменную цикла как ссылку, для изменения символа в std::string? Это связано с тем, что строки в глубине свой души остаются const char*? И как нам помогает при этом ссылка? Почему нельзя использовать обычную переменную?
Аноним 05/07/17 Срд 22:51:07  1017174
>>1016964
>Как суметь прочитать огромное количество страниц (1000) и при этом не сойти с ума?
Лучше их читать после практики. Тогда сразу будешь понимать, что тебе нужно, а что - нет. Мне вообще гугла, Мейерса и гнутых STL-исходников хватило в свое время, чтобы вкатиться (не с нуля, конечно). Я писал для обучения маленькую либу с контейнерами: вектор, дек, хэш-тэйбл, интрузив лист. На практике сразу ясно становится, что зачем нужно и как применяется. А просто книгу ботать - бесполезно, мне кажется. Ничего не отложится.
Аноним 05/07/17 Срд 22:55:06  1017177
>>1017166
>Почему нельзя использовать обычную переменную?
Потому что обычная переменная после изменения ничего со строкой не сделает, а ссылка изменит символ в строке, на который ссылается.
Аноним 05/07/17 Срд 22:58:46  1017179
>>1017177
>обычная переменная после изменения ничего со строкой не сделает, а ссылка изменит символ в строке, на который ссылается
Я и хочу узнать, почему так происходит.
Аноним 05/07/17 Срд 23:10:52  1017184
>>1017179
Переменная - это независимый кусок памяти. Что тут не понятно?
Аноним 05/07/17 Срд 23:18:09  1017189
>>1017174
Подскажи другому нюфагу: чем интрузив контейнер от нон интрузив отличается?
Аноним 05/07/17 Срд 23:24:01  1017192
>>1017184
Я понимаю, что независимая, но зачем ссылка? Ссылка - это ведь другое имя переменной?
Аноним 05/07/17 Срд 23:28:12  1017193
>>1017192
Да.
Аноним 05/07/17 Срд 23:35:54  1017195
>>1017193
Ну так а в чем тогда разница использования: изменять ссылку, т.е изменять переменную, либо сразу изменять переменную без ссылки?
Аноним 05/07/17 Срд 23:36:29  1017196
>>1017195
> изменять ссылку
Ссылки не меняются, меняются переменные, на которые они ссылаются.
Аноним 05/07/17 Срд 23:39:25  1017197
>>1017195
Вообще, ты не в тот тред пришёл с такими вопросами.
Аноним 05/07/17 Срд 23:40:18  1017198
>>1017189
>чем интрузив контейнер от нон интрузив отличается?
Обычный контейнер управляет объектами, которые в него добавляют, интрузив - объекты сами являются хранилищем контейнера.
List<T> - обычный лист, который менеджит память, управляет добавлением, удалением элементов.
Интузив: struct MyListElem : IntrusiveListElement<MyListElem> (или композицией вместо наследования), где struct IntrusiveListElement { T* next }; Причем эти элементы могут лежать в каком-то другом контейнере, но при этом быть частью списка.
Аноним 05/07/17 Срд 23:41:35  1017199
>>1017196
Ну так а почему бы сразу не изменить переменную? Зачем изменять ее через ссылку? Почему так придумано?
>>1017197
В остальных тредах не знают, что такое ссылка и гонят меня сюда.
Аноним 05/07/17 Срд 23:42:03  1017200
>>1017166
Потому что обычная переменная в теле цикла получает копию символа. Все изменения будут действовать только в пределах тела цикла. А ссылка - это по сути синтаксический сахар над указателем. А он указывает на символ в изначальной строке.
С указателями-то разобрался?
Аноним 05/07/17 Срд 23:42:55  1017202
>>1017200
>по сути
Ты выражаешься как выпускник филологического факультета.
Аноним 05/07/17 Срд 23:45:59  1017204
>>1017200
> ссылка - синтаксический сахар над указателем
Так вроде же указатель - это объект, а ссылка нет, это всего лишь другое название переменной
Аноним 05/07/17 Срд 23:46:26  1017206
>>1017202
Боюсь, выпускники филфака выражаются куда изящнее.
Так, что боцману флота записать охота
Аноним 05/07/17 Срд 23:47:02  1017207
>>1017204
>Так вроде же указатель - это объект, а ссылка нет, это всего лишь другое название переменной
Правильно мыслишь. Всяких питухов, которые мешают в кучу определения стандарта и детали реализации и потом принимают второе за первое не слушай.
Аноним 05/07/17 Срд 23:48:47  1017208
>>1017204
В твоём случае это название какой переменной?
Аноним 05/07/17 Срд 23:49:10  1017210
>>1017207
Хорошо, так а в чем разница?
>>1017199
Аноним 05/07/17 Срд 23:49:38  1017211
>>1017200
>синтаксический сахар над указателем
Дебилушко, синтаксическим сахаром называются конструкции языка, которые в принципе можно выразить через другие.

Всех свойств ссылок ты через указатели не реализуешь, так что не пизди насчёт синтаксического сахара.
Аноним 05/07/17 Срд 23:51:17  1017212
>>1017208
Та, которая бегает в цикле по строке
Аноним 05/07/17 Срд 23:51:49  1017213
>>1017204
Нет.
Это именно что удобная конструкция.
Чтобы лишний раз клаву не топтать.
https://pastebin.com/qS0q35dc
Аноним 05/07/17 Срд 23:54:04  1017215
>>1017213
Ну хуй знает, вроде в книге написано обратное
Аноним 05/07/17 Срд 23:54:15  1017216
>>1017204
И вообще, встречал мнение по формату кода. То, что всякие структуры лучше в функции передавать по указателю или ссылке, ты, надеюсь, в курсе. Так вот, некоторые советуют входные параметры (типа структур) передавать по ссылке, а выходные - по указателю, чтобы сразу по виду сигнатуры было понятно, что к чему.
Аноним 05/07/17 Срд 23:55:31  1017218
>>1017213
>Нет.
Пидора ответ.
Аноним 05/07/17 Срд 23:59:56  1017219
>>1017212
А ты вообще разбирал это выражение?
http://en.cppreference.com/w/cpp/language/range-for
https://stackoverflow.com/questions/8164567/how-to-make-my-custom-type-to-work-with-range-based-for-loops
Аноним 06/07/17 Чтв 00:00:12  1017220
>>1017212
Переменная же не может обладать чужой памятью, она уникальна в данный момент времени. Достаточно знать этого факта, чтобы понять, почему при изменении переменной кроме неё ничего не меняется.
Ты же когда в сортир идёшь, у твоего соседа по дому днище в кровати не срывает. Вы - два независимых объекта/куска памяти со своими состояниями/значениями в памяти.

Ты часом не из Java-мира к нам пришёл?
Аноним 06/07/17 Чтв 00:04:07  1017221
>>1017220
> из Java мира
Почти угадал, я джва года писал хеловорлды на шарпе
Аноним 06/07/17 Чтв 00:04:58  1017223
>>1017220
>Ты часом не из Java-мира к нам пришёл?
После джавы все понятнее должно быть - там все ссылки кроме примитивов.
Аноним 06/07/17 Чтв 00:18:54  1017230
>>1017223
Скорее наоборот, он под переменной понимает что-то вроде ссылки или указателя. Ведь это всё, что он видел.
Аноним 06/07/17 Чтв 00:19:39  1017231
>>1017230
У меня были такие же мысли про >>101722
Аноним 06/07/17 Чтв 00:20:13  1017232
>>1017231
>>1017223, я хотел написать
Аноним 06/07/17 Чтв 00:53:58  1017247
>>1016983
у лиммана есть вводная книжка по крестам
она охуенная
читай ее, делай там упражнения
а потом уже сразу начинай что-нибудь практическое кодить
а потом уже что непонятно, у страуструпа кусками дочитаешь
если бы у меня была машина времени, то себе молодому я дал бы такой совет
Аноним 06/07/17 Чтв 13:41:49  1017388
Не понимаю во всех этих указателях и ссылках, особенно если там какой-то *void. Что почитать?
Аноним 06/07/17 Чтв 13:49:48  1017392
>>1017388
>*void
Ну, в общем, указатели на указатели на указатели.
Аноним 06/07/17 Чтв 15:53:45  1017449
>>1017388
>Что почитать?
Шапку треда.
Аноним 06/07/17 Чтв 19:00:58  1017560
image.png (14Кб, 743x122)
Аноним 06/07/17 Чтв 21:11:45  1017641
>>1017388
Есть специальная книга по указателям, но там про чистый Си.
Richard M. Reese "Understanding and Using C Pointers. Core Techniques for Memory Management"

А вообще лучше прочти это:
Стэнли Липпман, Жози Лажойе и Барбара Му Язык программирования C++
Аноним 06/07/17 Чтв 21:45:58  1017665
Аноны, посоветуйте что-нибудь по параллельному погромированию в c++
Чтоо использовать для создания пула потоков? Как с этим работать?
Аноним 06/07/17 Чтв 21:48:14  1017667
>>1017665
К сожалению, придётся использовать какую-нибудь либу. Boost, например.
Аноним 06/07/17 Чтв 22:40:46  1017720
>>1017667
В С++11 уже есть потоки.
Аноним 06/07/17 Чтв 22:42:17  1017723
>>1017720
Я может неправильно понял. Подумал, что ему нужен готовый пул.
Аноним 06/07/17 Чтв 23:32:21  1017767
поясните за обработку исключений\ошибок на плюсах. где целесообразна и какие основы этого дела. приходится ли пользоваться возможностями библиотеки си. хотелось бы выбрать основной инструмент, но там дохуя всего в библиотеке.
Аноним 06/07/17 Чтв 23:36:51  1017773
>>1017767
еще поясните с чего начать вкатывание в qt.
Аноним 07/07/17 Птн 00:11:35  1017794
>>1017773
С вкатывания в кутю.
Аноним 07/07/17 Птн 01:47:18  1017845
>>1017773
Школу закончи.
Аноним 07/07/17 Птн 03:20:27  1017855
>>1017845
закончил тебе защеку
Аноним 07/07/17 Птн 10:57:24  1017929
>>1017845
>Школу закончи.
Зачем?
Аноним 07/07/17 Птн 13:35:15  1018012
>>1017767
Книжечки в шапочке. Там всё есть.
Аноним 07/07/17 Птн 18:29:09  1018140
>>1017767
>поясните за обработку исключений
В 90% случаев ничего явно обрабатывать не надо, в отличие от обработки возвращаемых значений.
Аноним 07/07/17 Птн 18:31:07  1018142
>>1017767
>поясните за обработку исключений\ошибок
Поясняю
> где целесообразна
Там где есть исключения/ошибки.
>приходится ли пользоваться возможностями библиотеки си
Приходится
>хотелось бы выбрать основной инструмент
Выбирай printf

Аноним 07/07/17 Птн 18:33:53  1018143
>>1018142
>Выбирай printf
fmtlib лучше.
Аноним 07/07/17 Птн 18:39:23  1018147
>>1018143
system() !
Аноним 07/07/17 Птн 18:42:51  1018148
>>1017767
>поясните за обработку исключений\ошибок на плюсах
try-throw-catch
>где целесообразна
Там, где ты не уверен в коде. В частности, если в работу программы вмешиваются внешние по отношению к программе факторы, такие, как исчерпывание памяти, зависимость кода от работы других программ.
>приходится ли пользоваться возможностями библиотеки си.
Можно, но не обязательно. Например, можно использовать С-схему распределения памяти для перегрузки оператора new или [], однако сам по себе С++ предоставляет достаточно мощные средства.
>основной инструмент
try-throw-catch. exit(), abort(). Вообще говоря, С++ предлагает тебе самостоятельно описать обработчики ошибок, и ни в чём тебя не ограничивает.
Аноним 07/07/17 Птн 21:13:26  1018248
https://www.coursera.org/learn/c-plus-plus-white
Аноним 07/07/17 Птн 21:43:38  1018271
Крестоносцы, объясните: зачем указатель на базовый полиморфный класс может указывать и на класс-потомок? Я не понимаю выигрыша.
Аноним 07/07/17 Птн 21:47:35  1018272
Как же заебали ньюфаги...
Аноним 07/07/17 Птн 21:47:49  1018273
>>1018271
Виртуальные функции.
Аноним 07/07/17 Птн 21:49:33  1018274
>>1018273
Ну и? Виртуальные функции всё-равно либо наследуются, либо переопределяются.
Аноним 07/07/17 Птн 22:00:51  1018279
>>1018271
Указатель на базовый неполиморфный тоже может.
Аноним 07/07/17 Птн 22:03:30  1018280
Поясните, почему MSVC выдает 12, а gcc и clang 8?

#include <iostream>
int main()
{
const std::vector<int> f(2);
const std::vector<int>::const_iterator cit = f.begin();
std::cout << sizeof(cit) << std::endl;
}
Аноним 07/07/17 Птн 22:04:43  1018281
>>1018280
Потому что таков размер const std::vector<int>::const_iterator

Всегда Ваш,
Капитан К.О.
Аноним 07/07/17 Птн 22:06:12  1018283
>>1018281
Ну а почему разработчики MSVC захотели сделать его 12, а не 8?
С чем это связано?
Аноним 07/07/17 Птн 22:06:30  1018284
>>1018279
Я всё ещё не вижу выигрыша. Или он начинает проявляться только с использованием динамического распознования типов?
Аноним 07/07/17 Птн 22:06:52  1018285
>>1018280
Почему не написать
using namespace std;
В глазах не рябит от std:: по всему тексту?
Аноним 07/07/17 Птн 22:08:11  1018286
>>1018283
Им так было нужно.
>>1018284
>Я всё ещё не вижу выигрыша.
Потому что ты проиграл.
Аноним 07/07/17 Птн 22:09:39  1018287
>>1018286
>ты проиграл.
...битву но не войну. Вот в твоей практике подобное поведение указателей приносило пользу?
Аноним 07/07/17 Птн 22:10:39  1018288
>>1018285
Мне так удобнее.
>>1018286
>Им так было нужно.
Ну а почему разработчикам clang и gcc нужно было 8, а не 12?
Аноним 07/07/17 Птн 22:11:45  1018289
>>1018288
>Ну а почему разработчикам clang и gcc нужно было 8, а не 12?
Чтобы копировать итератор было дешевле.
Аноним 07/07/17 Птн 22:13:51  1018290
>>1018289
>Чтобы копировать итератор было дешевле.
>дешевле
Это как?
Аноним 07/07/17 Птн 22:14:03  1018291
>>1018280
>почему MSVC выдает 12
http://rextester.com/l/cpp_online_compiler_visual тут выдал 8. Там 64-битный компилятор.
Аноним 07/07/17 Птн 22:14:36  1018292
>>1018289
Получается, что разработчики MSVC обосрались, определив 12 вместо 8?
Аноним 07/07/17 Птн 22:14:48  1018293
>>1018280
>почему MSVC выдает 12
http://webcompiler.cloudapp.net/ 32-битный, выдаёт 4
Аноним 07/07/17 Птн 22:17:42  1018295
2017-07-07.png (26Кб, 1336x390)
>>1018291
>>1018293
VS 2017
Аноним 07/07/17 Птн 22:18:29  1018296
>>1018295
А если Release?
Аноним 07/07/17 Птн 22:19:44  1018298
>>1018280
>const std::vector<int>::const_iterator cit = f.begin();
Зачем тебе константный итератор?
Аноним 07/07/17 Птн 22:23:27  1018302
>>1018295
https://godbolt.org/g/k2evNE
4 и 8
Тоже 2017
Аноним 07/07/17 Птн 22:24:10  1018303
>>1018274
Чтобы их вызывать, очевидно же.
Аноним 07/07/17 Птн 22:24:32  1018304
2017-07-07 (1).png (47Кб, 1544x510)
2017-07-07 (2).png (45Кб, 1316x505)
2017-07-07 (3).png (48Кб, 1314x554)
2017-07-07 (4).png (49Кб, 1361x554)
>>1018296
>>1018293
>>1018291
Провел эксперименты, результаты пикрил.
Почему так происходит? В чем разница между Release и Debug?
Аноним 07/07/17 Птн 22:27:03  1018306
>>1018304
>В чем разница между Release и Debug?
В размере итератора, озоза
Видимо, добавляют инфу для рантайм-проверки выхода за границы итератора и может ещё для чего-нибудь вроде сравнения итератора не с тем end.

Посмотри определение в заголовочном файле.
Аноним 07/07/17 Птн 22:27:30  1018307
>>1018306
>выхода за границы итератора
Выхода за границы вектора*
Аноним 07/07/17 Птн 22:28:56  1018309
>>1018298
Проводил эксперименты.
Просто const_iterator - это константный итератор, или итератор на константу?
А если const const_iterator - это константный константный итератор или константный итератор на константу?
Аноним 07/07/17 Птн 22:51:41  1018331
>>1018309
Так же, как с соответствующими указателями.
Аноним 08/07/17 Суб 11:05:14  1018546
Вопросик такой. Решил упростить свой Сишный код няшными функциями новой гомоС++.

Будет ли auto в данном коде работать как var? Функция вызываемая мной возвращает NTSTATUS, по идее я хочу чтоб _status после вызова стал типом NTSTATUS и мне не пришлось обьявлять для этого дополнительную переменную.

Вот код :

https://pastebin.com/vEqu6beF
Аноним 08/07/17 Суб 12:03:28  1018564
>>1016224
Как уже сказали, смысл в этом только один: позаёбывать препода, так как с первого раза всё это заходит трудно. У нас в инсте вообще сначала с машины Тьюринга начинали.
Если ты сомневаешься в том, что тебе надо платить эти 20к, то лучше здесь анона найди, будешь платить за прогресс и удовлетворение.
>>1016295
Ебу дал? Если тебе так сильно нужна производительность - отключи эксепшены в компиляторе (будут быстрее функции вызываться, азаза). Лучшие умы планеты делают всё для того, чтобы уничтожать стопу на С++ было так же эффективно, как на С.
>>1016769
Спроси это в отдельном треде, а не в треде плюсов. Раз ты спрашиваешь в треде плюсов: выбрать плюсы, так как джава дно.
>>1016931
Возвращай ссылку, но только ты можешь себе в ногу выстрелить, если класс сдохнет. CopyOnWrite в плюсах запрещён.
>>1016946
Сколько ещё раз ты этот кал будешь постить?
>>1016964
Конспектируй, блядь, будь мужиком.
>>1016990
Ты не слабоумный, просто плюсы - сложный язык, особенно - для начинающих. Потом быстрее пойдёт, если будешь упражняться.
И вообще программирование - это сплошное легаси, которое разгребать ещё десятилетиями будут. Коспектируй!
>>1016938
Если у него класс временный - тогда да, но тогда его стопа мертва ещё до рождения. Если у него класс обычный - никакого RVO быть не может.
Хотел нас потраллить?
>>1017204
Что ты пишешь, блядь? Всё, что ты можешь найти в языуе без подключения хеадеров - это интегральные типы (поправьте меня, если неправ), какие ещё объекты? Ссылка и указатель - один хуй, только одно надо разыменовать и можно переуказывать на другую переменную, а другое - не надо, и пересослать нельзя.
(про конст не говорим)
>>1017211
Важные отличия есть, но на суть не влияют.
>>1017388
void - это char , который можно приводить ко всему без предупреждений о типизации. char - это тип ячейки памяти, может быть больше 8 бит, и вовсе не "буква".
>>1017665
OpenMP нагугли, почти во всех современных компиляторах поддерживается.
>>1017773
С изучения примеров из дистрибутива Qt и тщательного чтения справки в Qt Creator.
>>1017767
Ты можешь писать на C++ без использования массивов на стеке и вообще почти всего из С. Но так никто не делает, поэтому читать чужой код будет трудно. Твой основной инструмент - документация, блядь - cppreference и стандарт.
>>1018287
В алтависту! Быстро, решительно!
>>1018292
Алтавистуй C++ ABI и про еблю с либами и extern "C".
>>1018309
- итератор (указатель) на константу
- неизменяемый итератор на константу (но на возможность арифметических операций с ним не влияет)
>>1018546
Да, всё будет. auto именно это и означает - вывод типа из инициализатора (должен быть вместе с объявлением).
Аноним 08/07/17 Суб 12:37:08  1018581
>>1018564
>Алтавистуй
Аж вспомнил 3.11 для рабочих групп и нэтскейп наш рулевой
Аноним 08/07/17 Суб 12:46:31  1018585
>>1018564
>Возвращай ссылку, но только ты можешь себе в ногу выстрелить, если класс сдохнет. CopyOnWrite в плюсах запрещён.

http://ideone.com/Ib0VPy

>Если у него класс временный - тогда да, но тогда его стопа мертва ещё до рождения. Если у него класс обычный - никакого RVO быть не может.
>Хотел нас потраллить?

http://ideone.com/cgfaTq
Аноним 08/07/17 Суб 12:53:30  1018587
>>1016941
Возвращать референс на локальный объект -- это undefined behavior, т.к. локальный объект, лежащий на стеке, после выхода из функции потенциально будет уничтожен.
Аноним 08/07/17 Суб 13:36:17  1018611
>>1018585
Перечитал ориджинал вопрос и всё понял. Статик не заметил, смысл вопроса во время чтения исказил.
>>1018587
Ты тоже невнимательно читал. Статичечкий метод, возвращается класс, а не buffer.
>>1018585 >>1018585 >>1018585 >>1018585
Аноним 08/07/17 Суб 13:41:49  1018618
Работаю С# веб макакой, знаком с С. Стоит ли учить С++? в моей стране особо вакансий нет, но все же хочется кресты знать хоть чуть чуть.

Может свалю потом за бугор и где то смогу стать крестомакакой? я хз. Очень хочется кресты, прям сильнее пиздятинки хочетсо!
Аноним 08/07/17 Суб 13:47:31  1018621
>>1018618
Если писать самому, то можно писать без легаси-говна. Если в чужом коде рыться, то лучше не надо. Да ты и без легаси стопу изуродуешь, пока не привыкнешь.
Аноним 08/07/17 Суб 13:56:56  1018631
>>1018621

Хочу писать для себя на C++ 11/выше с использованием всех красивых фичей которые упрощают жизнь. Без легаси говна.

Хочу вкатиться в гейдев пока что для себя пошаманить с OpenGL/Direct3D. + я тупой в математике и собираюсь немного подтянуть знания, парралельно с гейдевом было бы прекрасно.
Аноним 08/07/17 Суб 14:04:43  1018636
>>1018631
Ну и вперёд тогда. В шапке есть инфа.
Аноним 08/07/17 Суб 14:06:14  1018637
>>1018636

Ебучая РАБота только мешает со временем. Придется зубрить теорию и практиковаться по выходным. Ну может еще после РАБоты покодить, но у меня не часто силы остаются даже для того чтоб писать на C#/C свои проекты.
Аноним 08/07/17 Суб 14:10:09  1018639
>>1018618
Вообще особого смысла нет, C# вполне себе альтернатива крестам, области применения с учетом CX пересекаются под виндой чуть более чем полностью. А так тут где-то по соседству есть тема с конфой для вкатывающихся в разные языки с circle jerking'ом и прочими ништяками.
Аноним 08/07/17 Суб 15:06:28  1018668
http://www.cplusplus.com/reference/complex/complex/real/
Я чего-то не понимаю или те, кто писал std::complex - ебаны? Зачем писать геттер и сеттер, если можно просто сделать поля, как у std::pair? Нахуя всё усложнять?
Аноним 08/07/17 Суб 15:47:19  1018695
>>1018668
Хотели сделать однородным использование complex, наверное. Абс, например, может быть только методом.
Там нет сеттера - когда ты хочешь присвоить новое значение, ты пишешь
complex huy;
huy={1,2}; //initializer_list
или
huy={huy.real(),2};
Аноним 08/07/17 Суб 16:45:38  1018724
>>1018695
>Абс, например, может быть только методом.
Ну это естественно, если он не хранится, а считается.
Сеттер есть, можно написать:
huy.real(228);
Аноним 08/07/17 Суб 16:51:22  1018731
>>1018724
А, теперь вижу. Но ты на мелочи жалуешься. Попробуй лучше функцию, которая работает на трёх значениях аргумента: >>1005226 .
Аноним 08/07/17 Суб 16:58:22  1018735
>>1018731
Да, но:
1) Это стандартная библиотека, там каждая мелочь должна быть продумана.
2) Так надо же специально всё усложнить, помимо того же поля написать четыре бесполезные функции.
3) Мне интересно, может в этом глубочайший смысл какой-то, я-то хуй простой и не понимаю чего-то, что умные дядьки придумали.
Аноним 08/07/17 Суб 20:36:59  1018880
>>1018564
>Если тебе так сильно нужна производительность - отключи эксепшены в компиляторе
В правильном исполнении эксепшены не добавляют никакого оверхеда в нормальный control flow. Т.е. являются с этой точки зрения zero cost. Non-zero cost начинается только если эксепшен бросают.

> Что ты пишешь, блядь? Всё, что ты можешь найти в языуе без подключения хеадеров - это интегральные типы (поправьте меня, если неправ), какие ещё объекты?
Что ты пишешь, блядь?
Сразу заметно не открывавшего стандарт ни разу. Поди посмотри определение объекта в C++. К слову, в стандарте C тоже употребляют это слово — объект. И определяют оба стандарта этот термин одинаково. Так что он всё написал корректно.

> Ссылка и указатель - один хуй
Нет.

> Важные отличия есть, но на суть не влияют.
> суть
Гуманитарием несёт за версту.
Ссылки — не синтаксический сахар, т.к., как я уже писал, выразить все свойства ссылок через указатели невозможно.

> void - это char , который можно приводить ко всему без предупреждений о типизации
Нет, нельзя. Это другие указатели можно неявно приводить к указателям на char или void, но не наоборот.

> char - это тип ячейки памяти, может быть больше 8 бит, и вовсе не "буква".
Это верно, массив из char и unsigned char использую для определения что такое "представление объекта в памяти", но всё-таки одно из главных назначений char — хранить символ из базового набора символов (что это такое — тоже определено стандартом).

> Твой основной инструмент - документация, блядь - cppreference и стандарт.
Не очень похоже, что ты это применяешь к себе.
Аноним 08/07/17 Суб 21:03:27  1018889
>>1018880
>В правильном исполнении эксепшены не добавляют никакого оверхеда в нормальный control flow. Т.е. являются с этой точки зрения zero cost. Non-zero cost начинается только если эксепшен бросают.
Не все так умеют. Некоторые до сих пор в MSVS компилят, а там легаси на легаси.
>Поди посмотри определение объекта в C++.
В следующий раз полезу - гляну. Спасибо.
>Не очень похоже, что ты это применяешь к себе.
Если ты не хочешь, чтобы я что-то писал, то пиши раньше меня, делов-то. Что я применяю к себе - лучше известно мне, чем тебе. Знать все особенности языка до грамматических правил и уметь писать на нём, умело пользуясь документацией в моменты сомнений - разные вещи.

Мир и любовь к твоему очагу.
Аноним 08/07/17 Суб 21:05:11  1018890
>>1018889
>Если ты не хочешь, чтобы я что-то писал, то пиши раньше меня, делов-то.
Я и написал раньше тебя: >>1017207
Аноним 08/07/17 Суб 23:11:30  1018980
>>1018889
>Некоторые до сих пор в MSVS компилят
А что плохого в MSVC?
Аноним 09/07/17 Вск 01:40:17  1019057
>>1018980
Компилятор говно - ИДЕ божественна.
Аноним 09/07/17 Вск 03:42:12  1019092
Хочу пойти собеседоваться.
В требованиях к вакансии указано:
)работа с сетью(http)
)знание unix систем на уровне пользователя
На линуксе сижу года полтора, но никаких знаний особо не имею.
Что можно почитать по этим двум пунктам? Чего от меня ждут?
Аноним 09/07/17 Вск 09:15:17  1019108
>>1018980
Конкретно в этом случае - SJLJ-эксепшены (инбифо кланг).
Аноним 09/07/17 Вск 10:55:53  1019122
>>1019057
>Компилятор говно
Ну так я и спрашивал про компилятор.
Что конкретно в нем говно?
>>1019108
> SJLJ-эксепшены (инбифо кланг)
Почему это плохо?
Аноним 09/07/17 Вск 11:14:14  1019124
Кстати, когда там модули в крестах появятся?
В Visual Studio 2017 уже есть експериментальная возможность использования модулей.
Аноним 09/07/17 Вск 12:28:52  1019179
>>1019122
Оптимизирует хуево, не умеет в С++17. Шланг и гцц умеют.
Аноним 09/07/17 Вск 13:01:58  1019212
>>1019179
Жаль, что у шланга и гцц нет ни нормальных ide, ни нормальных портов на винду.
Аноним 09/07/17 Вск 13:03:05  1019216
>>1019212
Шланг на винде есть, да и MinGW от Стефана Т. Лававея норм. Другое дело да, что IDE кроме студии нет вообще, кроме красноглазой параши и джетбрейнсового дерьма.
Аноним 09/07/17 Вск 13:07:06  1019220
>>1019179
>>1019212
Ребята, кто вам мешает залезть в исходники и подкрутить их на свой вкус? Или вы тут хеллоуворлды пишете?
Аноним 09/07/17 Вск 13:10:18  1019224
>>1019216
>Шланг на винде есть
А у него есть собственная стандартная библиотека, как у gcc и msvc? Насколько я знаю, приходится использовать его вместе с gcc, а я этого делать не хочу.
Притом его не поддерживает даже говно от джетбрейнсов. Если бы поддерживало, и у него была своя стандартная библиотека, то радостно бы перекатился.
>>1019216
>MinGW от Стефана Т. Лававея
Можно поподробнее?
Аноним 09/07/17 Вск 13:10:56  1019226
>>1019220
в исходники компилятора студии залезть?
Ты таблетки принял?

>>1019224
https://nuwen.net/mingw.html
Аноним 09/07/17 Вск 13:19:15  1019237
>>1019220
>залезть в исходники и подкрутить их на свой вкус?
>имплаинг, что в этом треде кто-то может прочитать и подправить исходники компилятора
Аноним 09/07/17 Вск 13:20:11  1019241
>>1019226
>в исходники компилятора студии залезть?
Ну а почему бы нет?
Я думаю, каждый программист должен обладать навыками реверс-инжниринга.
Аноним 09/07/17 Вск 13:35:47  1019263
>>1019226
Дружок, исходники компилятора не этого я сам смотрел и разбирался в них. Если ты даже на такое не способен, то может тебе лучше заняться чем то другим?
Аноним 09/07/17 Вск 13:52:52  1019297
>>1019263
Я крестами уже 5 лет деньги зарабатываю, а ты мне чем-то другим заняться предлагаешь? How about no?
Аноним 09/07/17 Вск 14:29:53  1019363
>>1019212
Шланг завезли в студию. Сам не пробовал.
>>1019216
Qt Creator потихоньку избавляется от багов.
>>1019263
Скинь сурсы от MSVC в личку, я покопаюсь.
Аноним 09/07/17 Вск 14:39:36  1019385
Плюсаны, я нюфаг в C++, есть один проект: https://github.com/coolwanglu/pdf2htmlEX
Как сделать его компиляться в vs под виндовс?
Аноним 09/07/17 Вск 14:43:00  1019391
>>1019363
>Qt Creator потихоньку избавляется от багов.
Да, только он требует тот же самый msvc или mingw
Аноним 09/07/17 Вск 14:45:53  1019396
>>1019385
Cmake
Аноним 09/07/17 Вск 15:02:41  1019424
>>1019212
Нахуя компилятору своя иде, поехавший?>>1019220
Исходники чего? Закрытой студии?
>>1019385
В вс затрахаешься с разными версиями компилятора и кривыми xml-проектами. Лучше наверни на систему mingw со стандартными тузами вроде make и баша и cmake . && make
>>1019241
Что за поехавшие в треде? Уебок стих не дал написать и перекотил — набежали шизофреники, это кара божья, не иначе.
Аноним 09/07/17 Вск 15:08:25  1019431
>>1019424
>Нахуя компилятору своя иде, поехавший?
Я имел в виду поддержку компилятора.
Тот же gcc поддерживает много ide, а по факту все они - говно, кроме clion
Аноним 09/07/17 Вск 15:10:08  1019433
>>1019424
>Что за поехавшие в треде? Уебок стих не дал написать и перекотил — набежали шизофреники, это кара божья, не иначе.
Как ты будешь восстанавливать исходники, если их кто-то проебал, а бинарник проебать не смогли?
Будешь с нуля писать?
Тут-то и пригодятся навыки реверсинга, тупой овощ.
Аноним 09/07/17 Вск 15:29:38  1019459
>>1019433
Не, животное, когда ты занимаешься программированием, а не ежедневной деградацией в отладчике и дрочевом на свои кряки которые ты крякаешь и потолок твоего погромминга настрочить кейген на 2/3 состоящий из выдранного куска асма — есть плюс минус понимание как все работает и легче просто написать с нуля.
>>1019431
Сука ну ни траль так толста плез я щас вытику от тваиго жыра
Аноним 09/07/17 Вск 15:29:41  1019460
>>1019391
MinGW w64 - вполне норамальный порт ГЦЦ на винду, если он используется в коммерческом продукте и через него компилится куча софта, включая Сигвин. То, что Креатору не принципиален компилятор - это плюс, а не минус. В редистрибьютабле МНИГВ ГЦЦ есть, тебя это волнует?
>>1019424
>Нахуя компилятору своя иде, поехавший
ДЛЯ СБОРКИ ПРОЕКТОР БЕЗ МЕЙКФАЙЛОВ, например.
>>1019431
Говно вообще или для тебя? Твои потребности меня не интересуют.
Аноним 09/07/17 Вск 15:42:42  1019485
Есть ли пхпшнику профит от изучения C++?
Я имею в виду, есть ли проекты, требующие навыков написания кода на обоих этих языках. И насколько это экзотика?
Аноним 09/07/17 Вск 15:45:22  1019488
>>1019460
>ДЛЯ СБОРКИ ПРОЕКТОР БЕЗ МЕЙКФАЙЛОВ, например.
И много ты таких IDE знаешь, поехавший?
>>1019485
Экзотика уровня фейсбука, не парься и пиши на пхп.
Аноним 09/07/17 Вск 15:46:41  1019490
>>1019485
нет. Учи лучше Go или Яву
Аноним 09/07/17 Вск 15:52:54  1019500
>>1019459
>>1019460
Ну давайте, расскажите мне, какой хороший codeblocks или dev-c++. Можете еще сказать про CodeLite, там даже поддержка clang есть.
Аноним 09/07/17 Вск 16:49:35  1019566
Снимок.PNG (17Кб, 627x421)
Сап, крестач. Что за хуйня - почему код в ассемблерной вставке работает, а в цикле while вываливается с исключением - нет прав на чтение (типа лох расчехляй VirtualAlloc).
Аноним 09/07/17 Вск 16:56:53  1019574
>>1019566
Ах да, inb4 используй (DWORD)GetModuleHandleA(NULL) - нет, мне нужно именно вручную находить image_base, не спрашивайте почему.
Аноним 09/07/17 Вск 16:58:13  1019576
>>1019566

Тащемта у меня почему то вываливается аналогично но даже с VirtualAlloc.

Я не ебу хули оно хочет

https://pastebin.com/A18M3LAy
Аноним 09/07/17 Вск 17:00:55  1019578
>>1019566
>deltaoffset
Пацаны, у нас тут хакр!
Аноним 09/07/17 Вск 17:01:16  1019580
>>1019576
Блять, я наебал, VirtualProtect, не Alloc
Вываливается, потому что ты даешь доступ не на все страницы памяти. Там просто пока до 0x5a4d дойдет дело, ты через кучу страниц пройдёшь. Но я не хочу в цикле постоянно VirtualProtect дважды вызывать для каждой итерации.
Меня вот интересует, что за хуйня - на ассемблерных вставках работает, а на крестах - не
Аноним 09/07/17 Вск 17:18:47  1019594
Как бесят ебаные гумусы, неспособные четко и последовательно излагать мысли, выделяя главное. Особенно когда гумус еще и хороший специалист и придумывает ебанутые решения, которые сам не может объяснить.
Аноним 09/07/17 Вск 17:41:44  1019613
>>1019488
>И много ты таких IDE знаешь, поехавший?
Почти каждая из тех, которые я пробовал: у Креатора, у МСВС, у Коделите - у всех свои проекты, и мейкфайлов ты не касаешься. Иди на хуй.
>>1019500
Ты первый тут про Коделите пёрднул.
Аноним 09/07/17 Вск 17:47:48  1019624
>>1019613
>Почти каждая из тех, которые я пробовал: у Креатора, у МСВС, у Коделите - у всех свои проекты, и мейкфайлов ты не касаешься. Иди на хуй.
Какой же ты тупорылый.
При чём здесь компиляторы вообще? Иди таблеток выпей.
Аноним 09/07/17 Вск 18:17:17  1019647
>>1019624
>При чём здесь компиляторы вообще?
Ты чо несешь, дебич?
Он тебе про IDE говорит, а ты ему про компиляторы.
Аноним 09/07/17 Вск 19:02:36  1019679
Связка QtCreator и Cmake работают на любой ОС и с любым компилятором, больше здесь нечего обсуждать.
Аноним 09/07/17 Вск 19:11:05  1019684
>>1018980
>А что плохого в MSVC?
В 32-битном ABI при входе/выходе из функции постоянно требуется выполнять код, относящийся к поддержке исключений. Т.е. даже если исключений не бросалось, их поддержка вносит постоянный оверхед.
В 64-битном ABI, похоже, они стали zero cost. (Или просто оптимизатор поработал)
>>1019108
>SJLJ-эксепшены
Там не SJLJ, но тоже не zero cost.
>>1019179
>Оптимизирует хуево
2017-й уже не так хуёво. Но вообще да, у его оптимизатора есть некоторый потолок, связанный с тем, что компилятор ничего не знает о strict aliasing.
>>1019179
>не умеет в С++17
Как я демонстрировал в прошлом треде, не умеет даже в C++98.
>>1019216
>IDE кроме студии нет вообще
Фанатик незаметен.
Аноним 09/07/17 Вск 19:21:43  1019691
>>1019679
даже с mingw-w64?
Аноним 09/07/17 Вск 19:26:07  1019694
>>1019691
В Cmake можешь указать любую залупу, а если что не работает то найти в интернете модуль для этого.
Аноним 09/07/17 Вск 19:28:14  1019696
>>1019691
С mingw-w64 работает и сам креатор без всего (юзает мейкфайлы), и qbs, и cmake, и ещё что-то.
Аноним 09/07/17 Вск 19:55:39  1019729
>>1019647
Напоминаю сверхразумам
>>1019212
>Жаль, что у шланга и гцц нет ни нормальных ide, ни нормальных портов на винду.
>>1019424
>Нахуя компилятору своя иде, поехавший?
с чего все началось:
Аноним 09/07/17 Вск 20:27:40  1019759
>>1019729
Напоминаю сверхразуму, что "Программы и операционные системы обсуждаются в /s/".
Аноним 09/07/17 Вск 20:33:48  1019762
>>1019759
>Связанные с софтом вопросы обсуждаются в /s/. Исключение - IDE и прочие инструменты программирования, которые можно обсудить в тредах соответствующих языков.

А не петух ли ты часом?
Аноним 09/07/17 Вск 21:33:52  1019789
>>1019729
Все нормальные поняли, о чём идёт речь - о том, что в разы упрощает использование компилятора. Зачем нужны IDE - ты, видимо, знаешь. У тебя претензии к выражению "IDE у компилятора"? Не ебёт: учись понимать ошибки собеседника по контексту ( если это вообще ошибка).
Аноним 09/07/17 Вск 21:40:02  1019806
>>1019789
тащемто иде нинужно
Аноним 09/07/17 Вск 21:40:54  1019811
>>1019806
тащемто языки программирования кроме машинного нинужно
Аноним 09/07/17 Вск 21:45:34  1019824
>>1019806
поймали хеллоуворлдщика
Аноним 09/07/17 Вск 21:47:54  1019831
>>1019811
Вернее, кроме инструкций RISC ядра ничего не нужно.
Аноним 09/07/17 Вск 21:56:07  1019850
собственно как заставить это конпелироваться??
http://ideone.com/e.js/gx9C7k
Аноним 09/07/17 Вск 22:00:23  1019861
>>1019850
Никак, енум отдельно вынеси выше
Аноним 09/07/17 Вск 22:02:49  1019864
анон, как узнать, выхожу я на уровень джуна или нет? ооп изи шарю, списки стеки могу написать без проблем, решил курсач по теории кодирования написав прогу на плюсах. Могу в qt, на нем написал плеер для вк(правда запросы в вк на питоне делал(в фоне скрипт отдельным процессом запускал)), правда сейчас уже прикрыли api, написал себе прогу-напоминалку т.к. провайдер в общаге не удосужился сделать оплату в долг, которая сидит в трее, и при чекает каждый час есть ли на счету деньги на следующие сутки(есть URL по которому можно посмотреть статус счета, ну потом распарсил html и т д), ну конечно текст инфо об аккаутне сделал чтобы на мейн форме можно было посмотреть. Сделал все с потоками, добавил возможность установки в автозагрузку, сделал анимации норм, стилизировал кнопки и т д. Решил поучить python, написал пару скриптов по работе с вк(просто интересовало), всякие махинации с коментами и т д. Раньше как-то читал говнотред на каком-то форуме про джуна с++ и там знатоки говорили что хоть пейнт напиши свой чтобы фигуры можно было чертить и прочее говно, ну это же совсем шляпа, кароч поясните за джуна пж, копать я дальше все равно буду, но стоит ли мне совсем пыхтеть?
Аноним 09/07/17 Вск 22:05:57  1019872
>>1019864
Всем похуй что ты писал. Самое важное - это КАК ты пройдешь собеседование. Собеседований обычно 2 типа, это либо ты решаешь всякие говнозадачки, как в Яндексе -> иди дрочи leetcode.com и читай Кормена про алгоритмы

Либо это просто тебя будут спрашивать всякие уебанские вопросы ЧЕМ СТРУКТУРА ОТЛИЧАЕТСЯ ОТ КЛАССА или там ЧЕМ РЕФЕРЕНС ОТЛИЧАЕТСЯ ОТ УКАЗАТЕЛЯ.

Я собесил много джунов, обычно если ты прочитал хотя-бы майерса пару книжек - этого уже за глаза для найма.


Аноним 09/07/17 Вск 22:06:17  1019874
>>1019864
Самое время выучить CSS HTML JS, питон ты знаешь, поэтому вкатывайся в джангу.
А глупые вопросы про с++ не задавай больше
Аноним 09/07/17 Вск 22:06:43  1019875
>>1019861
прям совсем? никакие форвард декларейшены не помогут?
Аноним 09/07/17 Вск 22:09:51  1019880
>>1019875
https://stackoverflow.com/questions/71416/forward-declaring-an-enum-in-c

Забавно, я не знал, что так можно.
Аноним 09/07/17 Вск 22:11:30  1019885
>>1019880
только проблема в том, что у меня тип то темплейтный и когда определяю контекст то у меня используется еще не определенный тип.
Аноним 09/07/17 Вск 22:12:45  1019887
Что простого написать на С++?
Прочитал про переменные, указатели, ссылки, векторы и строки.
Аноним 09/07/17 Вск 22:13:24  1019890
>>1019887
Напиши компилятор для своего языка.
Аноним 09/07/17 Вск 22:13:59  1019891
>>1019874
глупые вопросы потому что они про с++ или потому что я плохо сформулировал? по питону, не совсем уж хочется в веб, язык конечно замечательный, но душа лежит к байтоебству/формоебству(ну если надо я душу перепрошью) просто хотел узнать как обстоят дела в с++
Аноним 09/07/17 Вск 22:16:37  1019897
>>1019872
каково соотношение этих собеседований(легких и нормальных)?
Аноним 09/07/17 Вск 22:16:58  1019898
>>1019887
попробуй написать сортировочки постепенно усложняя код темплейтами итераторами, фичами 17го стандарта потом берись за веб-сервер
Аноним 09/07/17 Вск 22:17:18  1019901
>>1019891
>глупые вопросы потому что они про с++ или потому что я плохо сформулировал?
Потому что спрашиваешь о вакансиях на с++
>хотел узнать как обстоят дела в с++
Плохо. Много легаси проектов с С++ 98, работы мало, в основном придется поддерживать древнее говно мамонта, которое сначала писали на чистом си, потом внезапно продолжили писать на си с классами, потом с шаблонами, исключениями, и.т.д
Аноним 09/07/17 Вск 22:18:05  1019904
>>1019897
Когда я собесился на джуна несколько раз - меня мучали именно вопросами по крестам. Когда я перестал быть джуном - меня мучали уже задачками. На прошлой неделе в яндекс на крестодебила собесился - дали задачку, в которой крестов вообще не было, на чистом си писал
Аноним 09/07/17 Вск 22:18:23  1019907
>>1019898
Про итераторы читал, про темплейты еще нет.
Я толком ничего не знаю, даже до 200 страницы липпмана еще не дошел.
Аноним 09/07/17 Вск 22:20:19  1019912
>>1019904
изложить её можешь? буду благодарен
Аноним 09/07/17 Вск 22:20:28  1019913
Кстати, что посоветуете прочитать по алгоритмам и структурам данных, а то я не знаю даже что такое связанный список и как реализовать сортировку пузырьком.
Аноним 09/07/17 Вск 22:21:08  1019915
>>1019898
веб-сервер? а это разве легко написать? или это тролинг?
Аноним 09/07/17 Вск 22:22:18  1019918
>>1019913
Кормена.
Аноним 09/07/17 Вск 22:22:48  1019922
>>1019918
Там математики много, я не могу в нее
Аноним 09/07/17 Вск 22:23:21  1019925
>>1019901
а если у меня есть интернатура luxoft в городе и я могу туда вполне податься, а там около embedded(разработка какого-то софта для автомобилей) стоит и на это положить? жаль конечно что много "говна мамонта" среди вакансий
Аноним 09/07/17 Вск 22:24:31  1019928
>>1019925
Ложить никогда не стоит, дума, в люксофт все стоит попытаться податься.
Аноним 09/07/17 Вск 22:24:39  1019929
>>1019922
Она там только в доказательствах всяких, это тебе все равно не надо.
Аноним 09/07/17 Вск 22:25:59  1019931
>>1019915
ну написать не большая проблема, только вот как и какого качества
Можно юзнуть какую-нибудь либу для работы с http и тогда задачей станет нажать на вики по либе или ручками работать с запросами(что я сам делал)
ну а так если действительно хочется развить знание программирования в довольно большом объемее то это твой чойс(рекомендую std::regex и boost::asio там есть все что тебе понадобится для не самого сложного https сервера)
Аноним 09/07/17 Вск 22:29:06  1019937
>>1019907
тогда читай дальше, итераторы без темплейтов странно использовать, хотя действительный опыт работы с темплейтами даст только разработка иерархии типов для какой-нибудь игры или хеширование строк в компалтайме
Аноним 09/07/17 Вск 22:31:10  1019940
>>1019931
за одно прочитай beej guide network programming(или как-то так) пойми как писать все на си и посмотри на boost как сделано там
Аноним 09/07/17 Вск 22:32:21  1019942
>>1019937
>итераторы без темплейтов странно использовать
Ну в векторах, строках и массивах они же используются, хотя в массивах это просто указатели.
Аноним 09/07/17 Вск 22:34:17  1019945
>>1019942
я конечно точно не скажу но вроде в gnu stl в array vector stack string итераторы и есть указатели
Аноним 09/07/17 Вск 22:35:00  1019947
>>1019942
я про то что магию типов c++ необходимо понять как можно раньше
Аноним 09/07/17 Вск 22:36:18  1019949
>>1019945
Я про обычные сишные массивы.
Аноним 09/07/17 Вск 22:39:39  1019950
>>1019949
итераторы были призваны обобщать алгоритмы и все stlевские алгоритмы темплейты
Аноним 09/07/17 Вск 23:35:52  1019975
>>1019850
Да никак. op::type - это поле инстанциированного тимплейта. От того, что он есть во всех инстансах и одинаковый, лучше не становится. Можно было бы написать специализацию, но её можно писать только после объявления основного тимплейта.
>>1019922
Как ты собрался изучать алгоритмы без математики? Пузырёк там псевдокодом, какая математика?
>>1019925
В интернатуре тебя шлюхой не сделают и паспорт не отберут. Попробуешь - расскажешь.
>>1019942
>векторах, строках и массивах
Тимплейт, нетимплейт, тимплейт. Вопросы есть?
>>1019949
В сишных массивах нету итераторов, сишные массивы - это кусок памяти без методов.
Аноним 09/07/17 Вск 23:40:58  1019978
>>1019975
>он есть во всех инстансах и одинаковый
Я, конечно, полагаю, что ты просто не совсем точно сказал то, что хотел, но всё-таки поправлю.

enum, определённый в разных инстансах темплейта — это разные enum-ы. Даже если они определены полностью одинаково.
Аноним 09/07/17 Вск 23:53:08  1019989
>>1019975
меня сейчас не пускают(cv уже слал), сказали приходи на 4-ом курсе (сейчас 2-ой)
Аноним 10/07/17 Пнд 00:08:13  1019997
>>1019975
>это кусок памяти без методов
Этож какие симантически отличные от указателя методы есть у итераторов?
Аноним 10/07/17 Пнд 00:19:00  1020001
>>1019912
Она тебе не поможет, иди дрочи leetcode.com и будет все путем
Аноним 10/07/17 Пнд 00:20:29  1020002
>>1019978
>Даже если они определены полностью одинаково.
Вообще я странно написал,про разные enum-ы, определённые полностью одинаково.

Раз они в разных инстансах — то они уже определены по-разному.
Аноним 10/07/17 Пнд 00:23:37  1020005
>>1019978
О, кстати, новая идея: "статические" члены, которые можно юзать через идентификатор тимплейта без аргументов. %ололол%%
>>1019997
Семантически. Итератор - это итератор. Указатель - это указатель. Когда говорят "итератор", имеют ввиду не вообще любую вещь, которую пяткой через ухо можно использовать, как итератор. .end() у массива есть, кстати? И не надо мне говорить про array+sizeof(array)
Аноним 10/07/17 Пнд 00:24:56  1020008
>>1020005
>array+sizeof(array)
Точнее array+sizeof(array)/sizeof(ASTERISK array)
Аноним 10/07/17 Пнд 02:24:24  1020093
>>1020005
Извини, но понятие итератора определили без тебя.

$24.2.1
1. Iterators are a generalization of pointers that allow a C++ program to work with different data structures
(containers) in a uniform manner.

2.Since iterators are an abstraction of pointers, their semantics is a generalization of most of the semantics
of pointers in C++. This ensures that every function template that takes iterators works as well with
regular pointers.

Аноним 10/07/17 Пнд 11:11:30  1020217
>>1020093
Речь была даже не о том, что такое итераторы (нет, это не один лишь указатель), а о том, что в сишных массивах их нет. Указатель - не итератор. У тебя в процитированном написано:
>in a uniform manner
А теперь взгляни на то, как ты получаешь .end() в сишном массиве:
>array+sizeof(array)/sizeof(ASTERISK array)
Итератор - это концепт, спорить не о чем. Учить меня тому, что я знаю много лет, не надо.
Аноним 10/07/17 Пнд 11:25:15  1020226
>>1020005
>как итератор. .end() у массива есть, кстати? И не надо мне говорить про array+sizeof(array)
std::begin() и std::end()
Аноним 10/07/17 Пнд 13:14:04  1020314
>>1020217
Если не надо, то зачем ты смешиваешь в одну кучу массивы и указатели (до которых массивы деградируют)?

>Указатель - не итератор
Указатель, согласно стандарту, как раз таки итератор.

>Iterators are a generalization of pointers that allow a C++ program to work with different data structures(containers) in a uniform manner.
Кхм. На русский это переводится так: Итераторы это обобщение указателей, позволяющее программам на C++ работать с разными структурами данных ( контейнерами ) в обобщенной манере.

Аноним 10/07/17 Пнд 16:35:35  1020469
>>1020314
>Указатель, согласно стандарту, как раз таки итератор.
Такие утверждения требуют уточнений.

>>1020314
>Кхм. На русский это переводится так: Итераторы это обобщение указателей, позволяющее программам на C++ работать с разными структурами данных ( контейнерами ) в обобщенной манере.
А, вот и уточнение.
Написано "итераторы это обобщение указателей" и ты отсюда сделал вывод, что "указатели это [обобщение] итераторы[ов]"? Кхм. Мда.


Можно сказать, например, что указатели это итераторы в том смысле, что для них задана частичная специализация std::iterator_traits. Тут никаких вопросов.


Насчёт "симантической" разницы. Это всё зависит от того, насколько вольно трактовать "симантику". Всё-таки при применении оператора * к итератору (если он определён как класс, а не просто алиас типа указателя) вызывается метод, а при применении к функции — built-in оператор. "симантически" это разные вещи.
Аноним 10/07/17 Пнд 17:51:59  1020545
Какой профит от изучения С++ на сегодняшний день?
Аноним 10/07/17 Пнд 17:53:18  1020546
>>1020545
Никакого.
Аноним 10/07/17 Пнд 18:03:49  1020559
>>1020546
Тогда куда вкатиться?
В джаву? В C#?
Аноним 10/07/17 Пнд 18:15:25  1020568
>>1020559
Смотря чего тебе надо
Аноним 10/07/17 Пнд 18:18:37  1020573
Пролистал липпмана и решил открыть мейерса и нихуя не понял, о чем он пишет. Как понять его писанину? какието lvalue и rvalue ссылки, а вообще не ебу что это за залупа такая
Аноним 10/07/17 Пнд 18:24:53  1020585
>>1020568
Системное программирование и веб.
Аноним 10/07/17 Пнд 18:25:28  1020587
>>1020585
В системном никуда без С или ++
Аноним 10/07/17 Пнд 18:28:11  1020593
>>1020587
Хорошо, тогда что можно написать на крестах, если я совсем ньюфаг?
Аноним 10/07/17 Пнд 18:30:12  1020596
>>1020593
Рогалик
Аноним 10/07/17 Пнд 18:32:40  1020598
>>1020593
Если совсем нюфаг иди литературу читай.
Аноним 10/07/17 Пнд 18:33:35  1020601
>>1020596
>Рогалик
Чо это?
Аноним 10/07/17 Пнд 18:35:12  1020602
>>1020601
Это типа кресты нахуй не нужны.
Аноним 10/07/17 Пнд 18:42:22  1020609
>>1020598
Какую?
Аноним 10/07/17 Пнд 18:47:24  1020612
>>1020609
Страуструпа
Аноним 10/07/17 Пнд 18:48:54  1020614
>>1020612
Какую именно?
Аноним 10/07/17 Пнд 18:52:49  1020617
>>1020614
Принципы и практика использования с++
Аноним 10/07/17 Пнд 19:07:44  1020637
>>1020609
Рэй Лишнер. C++. Справочник.

Она, правда, про 98/03-й стандарт, но для начала сойдёт.
Аноним 10/07/17 Пнд 19:15:34  1020643
>>1020617
А липпман/прата?
Аноним 10/07/17 Пнд 19:38:23  1020649
>>1020469
>Это всё зависит от того, насколько вольно трактовать "симантику"
Я тебя понял. Бывает.
Аноним 10/07/17 Пнд 20:01:12  1020668
Screenshot-6.png (25Кб, 851x249)
>>1020469
>Такие утверждения требуют уточнений.
А я сам уже глянул в стандарт. Указатель таки итератор.
Ок, буду знать.
Ясен пень, само по себе "итераторы - обощение указателей" не означает то, что указатель - итератор. Но раз написан список требований и указатель удовлтеворяет их - ок, ладно, таки итератор.
Аноним 10/07/17 Пнд 21:52:06  1020758
>>1016662 (OP)
Собираюсь использовать Clion + mingw-w64 на винде, какие подводные?
Аноним 10/07/17 Пнд 22:10:45  1020787
>>1020758
Clion крайне убог как IDE (сколько еще лет memory view будут прикручивать и по памяти переполняться на проекте на 1000 файлов?), порт gdb крайне убог сам по себе (нет нормально работающих view'ов, нормально не работает ретроспектива). Других подводных нет. Они все надводные.
Аноним 10/07/17 Пнд 22:14:09  1020794
>>1020787
А какую IDE тогда использовать?
Eclipse CDT? Qt Creator? Visual Studio с MSVC, который не полностью поддерживает даже C++98?
Аноним 10/07/17 Пнд 22:15:07  1020795
>>1020794
Естественно студию.
Аноним 10/07/17 Пнд 22:17:47  1020802
>>1020795
Ну а что делать с плохой поддержкой стандартов?
Я еще на Си в основном пишу, мне С99 и С11 хотелось бы увидеть.
Аноним 10/07/17 Пнд 22:23:04  1020810
>>1020802
Судя по тому, что ты вообще об этом спрашиваешь - ты сраный ученик подмастерья джуна на пол ставки за борщ. Исходя из этого - перестать забивать голову левой информацией. C99 поддерживается 15й студией, C11 нормально не поддерживается никем (если не считать еблю с флагами под gcc) кроме clang.
Аноним 10/07/17 Пнд 22:33:12  1020823
>>1020810
C99 поддерживается студией на уровне совместимости с С++, не больше.
>не считать еблю с флагами под gcc
Не понимаю, о какой ебле ты говоришь, но он в gcc нормально поддерживается.
https://gcc.gnu.org/wiki/C11Status
Аноним 10/07/17 Пнд 22:42:25  1020826
>>1020794
>Visual Studio с MSVC, который не полностью поддерживает даже C++98?
Если тебе так важна корректная работа two phase lookup-а в шаблонах, то там, насколько я знаю, есть Clang with Microsoft CodeGen. Т.е. фронтенд от Clang, бекенд от CL.

Сам никогда не пробовал.
Аноним 10/07/17 Пнд 23:13:07  1020839
>>1020823
https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html

Выбирай любую комбинацию gnu11/stdc11 которую тебе cmake/configure высрет и ебись, чего как маленький то?

Особенно доставляют вариации -fpermitted-flt-eval-methods, с багами вроде этого:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69462
или
https://stackoverflow.com/questions/28851350/same-flt-eval-method-different-results-in-gcc-clang
Аноним 11/07/17 Втр 12:58:13  1021140
>>1020839
>https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69462
Макроопределение забыли, бывает.
>https://stackoverflow.com/questions/28851350/same-flt-eval-method-different-results-in-gcc-clang
Почему там вообще r1 может быть не равен 1? У 1.0 и 10.0 одинаковая мантисса, а по алгоритму IEEE там сначала получается мантисса=1, а потом уже режется точность из-за нормализации:
http://www.rfwireless-world.com/Tutorials/floating-point-tutorial.html
Это уж в кланге баг тогда.
Аноним 11/07/17 Втр 14:07:06  1021180
>>1016662 (OP)
Что нужно прочитать и выучить, чтобы стать С++ джуном?
Аноним 11/07/17 Втр 14:12:45  1021183
>>1021180
-> >>1019872
Аноним 11/07/17 Втр 15:07:38  1021220
>>1016662 (OP)
Из чтения стандарта не понял, как слово inline решает проблему многократного определения. Объясните, почему добавление inline устраняет такие ошибки.
Аноним 11/07/17 Втр 15:18:32  1021229
>>1020545
Посоны, а был ли когда-то вообще профит от изучения C++?
Аноним 11/07/17 Втр 15:21:47  1021234
>>1020573
L/R value - это, судя по всему, Левые/Правые значения, то есть те, что стоят слева или справа от знака присваивания, например.
lvalue1 = rvalue1

У них есть свои особенности, но я не шарю.
Аноним 11/07/17 Втр 15:27:35  1021242
>>1021220
Прозреваю, что будет объектный файл на хеадер. Стандарт не читал, заскринь выдержки.
Аноним 11/07/17 Втр 15:30:08  1021245
>>1020802
При чем здесь стандарты? Писать код удобно. Не нравится компилятор? Используй внешний, благо теперь можно делать проекты cmake Это конечно своя головная боль, но другого я не знаю
Аноним 11/07/17 Втр 16:29:45  1021301
>>1020545
Зарплата
Аноним 11/07/17 Втр 16:46:42  1021320
>>1020545
Геймдев, больше кресты ни для чего не нужны.
Аноним 11/07/17 Втр 16:47:32  1021321
Есть структурка
struct Rate
{
int count;
string str;
};

Если во время её инициализации присвоить в str какую-то строку, то выделится память и произойдет копирование?
Если да, то как этого избежать? (если делаю str ссылкой, то ломается последующая сортиковка) если нет, то это ведь и будет предельно быстро?

Изначально строки берутся из словаря, который гарантированно будет жив.
Затем вектор из этих структур сортируется так:
auto sortLambda = [](const Rate & a, const Rate & b) -> bool
{
if (a.count != b.count)
return a.count > b.count;
return a.str < b.str;
};

for (auto it = rates.begin(); it != rates.end(); ++it)
sorted.push_back(Rate{ it->second, it->first });
sort(sorted.begin(), sorted.end(), sortLambda);
Аноним 11/07/17 Втр 16:51:30  1021327
>>1021320
Отнюдь. На крестах дохуя всего пишется, геймдев это меньшая часть.
Я пишу софт для сетевого оборудования охуительно быстрого. Ядро на С, обвязка на крестах
Аноним 11/07/17 Втр 16:56:15  1021331
>>1021327
Для всего остального достаточно обычного C, классы не нужны.
Аноним 11/07/17 Втр 17:03:22  1021337
>>1021220
Функция с модификатором inline может быть многократна объявлена. При компиляции будет взято первое попавшееся определение.
Аноним 11/07/17 Втр 17:04:46  1021340
>>1021331
Ты ебанешься писать огромный проект на чистом си, линуксопердолики не в счет, у них время бесплатное.
Аноним 11/07/17 Втр 17:05:02  1021341
>>1016662 (OP)
Сначала вкатиться в си, а потом в кресты, или наоборот?
Аноним 11/07/17 Втр 17:09:38  1021347
>>1021341
Катись нахуй.

>>1021321
Самый оптимальный способ для инициализации такой структуры - добавить конструктор вид

Rate( int count_arg, const string& str_arg ) : count ( count_arg) , str ( str_arg ) {

}

В этом случае строка будет создана только один раз.

Аноним 11/07/17 Втр 17:33:41  1021360
Объясните, почему decltype(&p) возвращает int ?
Аноним 11/07/17 Втр 17:36:42  1021362
>>1021341
Начни с си.
Плюсы это си с классами
Аноним 11/07/17 Втр 17:48:25  1021370
>>1021337
>Функция с модификатором inline может быть многократна объявлена
С чем это связано и как обосновано? Или это "а пусть будет так"?
Аноним 11/07/17 Втр 17:49:19  1021372
>>1021360
Потому что адрес переменной это DWORD или QWORD, то есть беззнаковое целое.
мимо хакр
Аноним 11/07/17 Втр 17:52:17  1021374
>>1021372
>>1021360
Нет ты и я обосрались.

decltype(&p) возвращает int##

## - две звездочки
Аноним 11/07/17 Втр 17:52:36  1021375
>>1021331
Что ты в ЦПП-треде забыл, болезный?
>>1021360
Зависит от того, какого типа p. Если оператор взятия адреса переопределён, то может возвращать хоть конскую залупу.
>>1021372
Если decltype от адреса возвращает int по той причине, которую ты назвал, то компилятор не может предупредить об использовании числа вместо адреса в компайл-тайме.
Аноним 11/07/17 Втр 17:53:50  1021376
>>1021374
Телепаты в отпуске, тип p назовёшь наконец?
Аноним 11/07/17 Втр 17:54:26  1021377
>>1021376
int
Аноним 11/07/17 Втр 18:10:30  1021385
Так-с, вот наговнокодил я свой шаблонный ребус на вариадик темплейтах и рекурсии этих самых шаблонов, а как посмотреть во что это все говно развернётся кроме как дизасемблером?
Аноним 11/07/17 Втр 18:18:43  1021388
>>1021377
Звёздочки не просрались?
Аноним 11/07/17 Втр 18:21:32  1021389
>>1021388
Net.
Аноним 11/07/17 Втр 18:30:30  1021391
Ребзя, кто нибудь пробовал оптимизировать проги на асемблере? Например я написал хеллоу врот и хочу чтобы он работл бырее и жрал меньшеговна памяти
Аноним 11/07/17 Втр 18:31:45  1021392
>>1021391
из 80х капчуешь?
Аноним 11/07/17 Втр 18:37:24  1021394
Как называть переменную, в которой хранится число для сдвига?
Т.е. uint32_t s = 24; a << s; — как бы вы s назвали?
Аноним 11/07/17 Втр 18:39:41  1021395
>>1021391
Они уже оптимизированы, т.к оптимизацию проводит компилятор за тебя.
Аноним 11/07/17 Втр 18:40:11  1021396
>>1021394
оставил бы константой, или назвал чем-то, что отображает от куда ты взял значение сдвига.
Аноним 11/07/17 Втр 18:50:30  1021399
Лублу мтпргромировоне:
https://pastebin.com/7fUgNzSd
(сюда не влезло, а жаль, лол хотя судя по
main.cc:29:10: note: (skipping 1015 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
самое интересное не влезло, кек).

>>1021396
Дык у меня из-за этого-то и творческий кризис, ибо я хз чем назвать, я его не откуда и не беру — это просто изначальное значение, от которого отравляется по 8 и из 4/2 знаковой строки составляется её хекс код.
Аноним 11/07/17 Втр 18:59:16  1021404
>>1021399
>значение, от которого отравляется по 8 и из 4/2 знаковой строки составляется её хекс код.
Блин, нихуя не понял.
Аноним 11/07/17 Втр 19:32:30  1021437
>>1021391
gcc -Os
Аноним 11/07/17 Втр 19:46:38  1021447
>>1021370
Бамп.
Аноним 11/07/17 Втр 20:13:01  1021477
>>1021220
>Из чтения стандарта не понял, как слово inline решает проблему многократного определения. Объясните, почему добавление inline устраняет такие ошибки.
Потому что стандарт явно разрешил таким определениям нарушать one ODR rule.

>>1021370
>С чем это связано и как обосновано?
А подумать?
Аноним 11/07/17 Втр 20:14:47  1021480
>>1021234
>L/R value - это, судя по всему, Левые/Правые значения
Самый прикол в том, что r/lvalue относится не к значениям, а к выражениям.
Аноним 11/07/17 Втр 20:16:40  1021481
>>1021385
есть средства для этого, в том числе и на шланге, само собой
другое дело что не оч популярны, видимо потому что ньюфаги и так в этом не шарят, а монстрам уже не надо, они и так понимают
та же история, что и с препроцессором в си - во всех компиляторах существует опция позволяющая посмотреть процессированный код (с развернутыми макросами), но люди даже с 10тью годами опыта этим не пользовались..
Аноним 11/07/17 Втр 20:18:17  1021483
>>1021394
shift_amount
Аноним 11/07/17 Втр 20:18:37  1021484
>>1021394
shift_amount
Аноним 11/07/17 Втр 20:25:22  1021492
>>1021477
>А подумать?
Потому что функция определяется встраиваемой и может подставляться целиком по месту вызова? Но ведь это только рекомендация компилятору.
Аноним 11/07/17 Втр 20:27:55  1021493
>>1021394
Тоже вкачусь с вопросом. Как назвать параметр типа шаблона, который может быть целым числом (для подсказки полюзывателям шаблона)?
Аноним 11/07/17 Втр 20:31:40  1021495
>>1021492
Если функция встраивается в место вызова, то от неё никаких самостоятельных определений не остаётся.

Темплейты функций пишутся в хедерах и их инстанциирование потенциально приводит к определению функций во многих единицах трансляции. Чтобы не нарушать этим one ODR rule, инстанциированные функции неявно являются inline.

То же распространяется на методы классов, определённые внутри определения класса. Они попадают во все единицы трансляции, подключающие хедер с их определением и поэтому неявно являются inline.
Аноним 11/07/17 Втр 20:31:49  1021496
>>1021493
intNumber
Аноним 11/07/17 Втр 20:32:31  1021497
>>1021495
>Если функция встраивается в место вызова
Или не встраивается.
Аноним 11/07/17 Втр 20:33:51  1021499
>>1021497
Или не функция.
Аноним 11/07/17 Втр 20:41:17  1021506
>>1021499
Так, падажжи, то есть, если у меня будут статичные мемберы заинлайнены, они будут в нескольких экземплярах?
Аноним 11/07/17 Втр 20:42:04  1021507
14372197545330.gif (1553Кб, 480x272)
>>1021447
Связано с 50-летними технологиями компиляции и сборки программ. При компиляции кода с обычными функциями компилятору не нужен код самих функций - он просто проставляет ссылки и идет дальше. Тоесть при компиляции каждой отдельной единицы трансляции в ней может не содержаться кода некоторых функций - главное чтобы были их декларации (для статического контроля типов). Потом с заменой ссылок на реальные адреса функций (и поиском этих функций) ебется уже линкер. Но при компиляции кода с инлайн функциями компилятору нужен код этих функций потому что этот код напрямую вставляется вместо вызовов функций. Тоесть при компиляции каждой отдельной единицы трансляции нужен код всех инлайн функций которые используются в этой единице. В случае функций которые должны использоваться только в одной единице трансляции проблем нет - код функции помещается в .срр файл и все. Но если ты хочешь использовать инлайн функцию в нескольких единицах трансляции единственный нормальный способ - поместить эту функцию в хедер. Но тут получается проблема что компилятор создаст кучу одинаковых функций (для кадой единицы трансляции в которую включен хедер с инлайн функцией). В случае обычных функций это запрещено. Ну и какбы нет особого смысла код обычных функций помещать в хедер - множественная компиляций одной и тойже функции только замедлит процесс. А для инлайн функций - помещение в хедер это единственный нормальный вариант использовать одну и туже функцию в нескольких единицах трансляции, поэтому он и разрешен. Все возможные отхуяченые по шею ноги - на совести программиста.
Аноним 11/07/17 Втр 22:15:35  1021602
>>1021480
как rvalue может быть выражением?
Аноним 11/07/17 Втр 22:20:40  1021607
>>1021602
>как rvalue может быть выражением?
А в чем проблема?
Аноним 11/07/17 Втр 22:22:57  1021610
>>1021607
А, я lvalue имел ввиду. Типа как вообще может выражение слева от присвоения быть (a+b=c)? разве что если там указатель вычисляется
Аноним 11/07/17 Втр 22:24:22  1021611
>>1021610
Если operator+ для a и b вернёт lvalue-ссылку, то a+b будет lvalue.
Аноним 11/07/17 Втр 22:27:10  1021614
>>1021610
>>1021611
Хотя даже ссылка не обязательна. Главное, чтобы оператор= был определён.

Для std::string a, b, с,
a+b=c
вполне скомпилируется.
Аноним 11/07/17 Втр 22:28:40  1021617
>>1021610
>>1021614
Хотя не то. Мы же говорим про lvalue, а не просто возможность написать a+b=c.

Тогда старый ответ: если a+b это lvalue-ссылка, то выражение будет lvalue.
Аноним 11/07/17 Втр 22:34:52  1021622
>>1021610
> я lvalue имел ввиду. Типа как вообще может выражение слева от присвоения быть
А, ты думаешь, rvalue или lvalue определяется тем, с какой стороны от = стоит выражение? Это не так.
Аноним 12/07/17 Срд 00:37:39  1021685
>>1021610
>(a+b=c)? разве что если там указатель вычисляется
Если a это указатель, а b это целое число (или наоборот), то a+b=c ты написать не сможешь, разве что *(a+b)=c
хуй с горы 12/07/17 Срд 12:29:11  1021838
Читал комменты сверху, скажу - сколько тут сверхразумов, готовых писать свои компиляторы, сравнивают Java с CPP, говорят что компилятор MSVS "говно", студия как IDE параша, QT сосёт в функционале, C++ вымирает... Твоюж мать, вы ебанутые. Яву и кресты сравнивать вообще нельзя. MSVS, если ты пишешь код как макака куча циклов в цикле ещё в цикле - быстрее, а также с ссылками/адресами быстрее рабит => каждому свое. Студия имеет более расширенный функционал перед другими IDE. Также отладчик супер, новая фича - профилирование, которое нигде не найдёшь. QT имеет ряд особенностей. Они кажутся многим настолько полезными, что и переходят на него. Те же слоты и сигналы чего стоят. И, конечно же, он бесплатный. C++ не вымирает, каждый язык имеет свое предназначение. Я до сих пор временами использую паскаль.
Аноним 12/07/17 Срд 12:53:58  1021849
>>1021838
Ты еще больше бреда от вкатывальщиков читай.
Аноним 12/07/17 Срд 12:55:51  1021850
>>1021622
Ну, отчасти это так, потому что именованный rvalue ведет себя как lvalue. Более правильно было бы сказать - rvalue это неименованная величина получаемая из результата выражения или статик каста.
Аноним 12/07/17 Срд 13:21:18  1021853
>>1016662 (OP)
Плюсоны, может напишем свою ось?
Аноним 12/07/17 Срд 13:22:25  1021854
1.png (16Кб, 883x284)
2.png (52Кб, 1182x624)
Если в push_back передавать объект с unique_ptr, поинтер нормально скопируется, или без std::move никак?
Аноним 12/07/17 Срд 13:24:20  1021855
>>1021854
unique лучше всегда передавать как rvalue
Аноним 12/07/17 Срд 13:33:46  1021862
>>1021838
Студия действительно говно, я там только цветовую тему спиздил.
Qt как IDE шикрен, из библиотек там только интерфейс писать удобно. Ну и разный функционал там впечатляет, но как ядро тугой.

К слову, зачем c++ и джава ребята используют отладчик? Гораздо проще использовать дебагстринги, логирование или те же месседжбоксы.
Это ж ебанутся можно подрубать дебагер на мультипочное приложение с 20+ классами. Тем более 90% его функционала нет смысла использовать для дебага высокоуровневых приложений.
Аноним 12/07/17 Срд 13:34:29  1021864
>>1021855
Вопрос в том, можно ли это делать без этого, и без emplace_back. Нет, да?
Аноним 12/07/17 Срд 13:37:10  1021867
>>1021864
Ну, теоретически это возможно в vc если ты не используешь /Ze ( https://msdn.microsoft.com/en-us/library/0k0w269d.aspx ). Но не надо этого делать. Это нарушает концепцию unique_ptr.
Аноним 12/07/17 Срд 14:17:41  1021891
sgbsbgs.png (10Кб, 922x266)
Анон, сорри за такой вопрос, но у меня уже крыша едет.
Вот есть std::tr1::regex
https://msdn.microsoft.com/en-us/library/mt771538.aspx

У его функций есть по несколько версий. Например вот пара regex_search:

bool regex_search(const Elem ptr, match_results<const Elem, Alloc>& match, const basic_regex<Elem, RXtraits, Alloc2>& re, match_flag_type flags = match_default);
bool regex_search(const Elem* ptr, const basic_regex<Elem, RXtraits, Alloc2>& re, match_flag_type flags = match_default);

В норме, версия функции выбирается в зависимости от используемых параметров и без танцев, что и показано в MSDN примерах там же, например

std::cout << "search(f, l, \"abc\") == " << std::boolalpha << regex_search(first, last, mr, rx) << std::endl;
std::cout << "search(\"a\", \"abc\") == " << std::boolalpha << regex_search("a", rx) << std::endl;

Тогда почему же у меня, в VS 2017 работает только версия с двумя параметрами, пикрилейтед? Как запустить и другие версии? Я хочу вернуть совпадение.

std::tr1::regex_match(strStd, pattern, res); - не работает

std::tr1::regex_match(strStd, pattern); - работает
Аноним 12/07/17 Срд 14:19:34  1021894
>>1021891
Всё, сорри, проебался в глаза.
Аноним 12/07/17 Срд 14:20:35  1021895
>>1021891
Не по теме проблемы: не используй tr1, 2007 не вернешь. Используй просто std::regex_match.
Аноним 12/07/17 Срд 14:22:12  1021897
>>1021895
Так сейчас и сделаю.
Аноним 12/07/17 Срд 15:00:18  1021924
Переходите на го, пацаны, хватить сидеть на древних технологиях
Аноним 12/07/17 Срд 15:01:21  1021925
>>1021924
Нахуйидь, а?
Аноним 12/07/17 Срд 15:01:40  1021926
>>1021925
А может все-таки ты?
Аноним 12/07/17 Срд 15:03:12  1021928
>>1021926
>go
>может все-таки ты
Отважен, щегол!
Аноним 12/07/17 Срд 15:03:58  1021930
>>1021924
Зачем нам говно есть?
Иди своих хипстеров в раст м жс тредах вербуй.
Аноним 12/07/17 Срд 15:05:11  1021932
>>1021930
Почему он говно?
Аноним 12/07/17 Срд 15:08:03  1021935
>>1021932
Потому что это си с жирным рантаймом. В 2017.
Аноним 12/07/17 Срд 15:18:05  1021941
>>1021935
В си хотя бы макросы есть и куча либ для всего.
Аноним 12/07/17 Срд 15:20:02  1021944
>>1021862
>К слову, зачем c++ и джава ребята используют отладчик?
Чтобы смотреть память, когда прога упала.
Аноним 12/07/17 Срд 17:47:51  1022000
Аноны, я так понимаю, что эпохе десктоп-приложений пришел конец?
Или еще есть шанс вкатиться в десктоп разработку?
Аноним 12/07/17 Срд 18:31:20  1022021
>>1022000
да
нет


Аноним 12/07/17 Срд 18:33:10  1022022
>>1022021
Очень печально, а что же стало с десктопом?
Аноним 12/07/17 Срд 18:34:44  1022025
>>1021891
нахуй вы регулярки на крестах пользуйте?
зачастую можно sprintf обойтись или его аналогами
ну или пишется state machine, способов как ее делать штук пять можно набрать
просто учитесь их писать и все
Аноним 12/07/17 Срд 18:36:54  1022028
>>1022025
>sprintf
>C++
Прости, я не хочу жрать говно из мира чистого Си
Аноним 12/07/17 Срд 18:51:38  1022038
>>1021941
В си кроме кодогенерации без стороннего говна (кек) за спартанство платят перформансом и низким потреблением памяти, в говне тебе не платят ничем, кроме того что этому говну даже человека с синдромом обучить можно.
Аноним 12/07/17 Срд 18:52:53  1022039
>>1022022
Он стал тырпрайзным. Ну, еще игры остались и всякие мессенджеры + тулы. Но в % тулами пользуется малое число юзеров. Хотя на икру с ферарями хватает.
Аноним 12/07/17 Срд 18:53:33  1022040
>>1022022
Да всё в веб-технологии перекатывается, даже ебаные десктопные приложения. Тот же православный, казалось бы, Qt — и тот активно развивает свой QML ака недоумию-жс-для-разметки-и-просто-жс-для-логики.
Аноним 12/07/17 Срд 18:55:25  1022042
>>1022028
>хочешь сделать хуяк-хуяк
>предлагают привязывать ногу к стулу sprintf — чтобы отстреливать удобнее было
>потом говорят писать стейк-машины на каждый хуяк-хуяк который делаешь просто потому что автобус из буханки
/0
Аноним 12/07/17 Срд 18:55:40  1022043
>>1022025
Ну вот тебе эрэфсишная регулярка для почтовых адресов. http://www.ex-parrot.com/pdw/Mail-RFC822-Address.html
Можешь примерно так на глаз конечный автомат накидать?
Аноним 12/07/17 Срд 19:00:54  1022045
>>1022043
Вот поэтому перл и сдох, лол. Для почтовых адресов фсм вышла бы куда короче — что ещё может быть нужно, кроме как разделить адрес на до и после @ и попутно проверить все ли там аски символы?
если чо другой анон
Аноним 12/07/17 Срд 19:04:56  1022046
>>1022045
Вообще имплементации RFC822/RFC5322/5321 проприоритарные как правило и для иллюстрации я их притащить не мог, ту что притащил - на порядок короче виденного на практике.

>Для почтовых адресов фсм вышла бы куда короче
Ну давай начнем с name@"supercorp@fuckers".com
Аноним 12/07/17 Срд 19:21:38  1022056
>>1022025
>нахуй вы регулярки на крестах пользуйте?
Ну а как еще мне просто достать из строки подстроку соответствующую шаблону?
Если есть решени проще чем

std::string inputStr;
std::match_results<std::string::const_iterator> result;

std::regex regexp("([0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,4})");
std::regex_search(inputStr, result, regexp);

То я буду рад его увидеть.
Аноним 12/07/17 Срд 20:35:15  1022100
>>1022056
алгоритмы на строках учи
учись делать машины состояний
я же написал
Аноним 12/07/17 Срд 20:37:10  1022103
>>1022042
>>1022043
блядь, идите нахуй дебилы
кочешь юзать регулярки - юзай
и иди нахуй
Аноним 12/07/17 Срд 20:38:22  1022104
>>1022100
Они будут более наглядны и лаконичны для решения задачи поиска даты в строке? Покажи пример, пожалуйста.
Аноним 12/07/17 Срд 21:30:15  1022137
>>1022104
Сам факт того, что ты сделал регулярку, подразумевает бессмысленность построения тут конечного автомата.
Может тот анон просто сказал тебе что-то вроде "git gud" или просто выебнулся, но по строкам там точно меньше не выйдет.
Аноним 12/07/17 Срд 21:42:40  1022142
>>1022137
Тот анон - ебанувшийся байтоеб периодически посещающий этот тред. Не обращай внимания.
Аноним 12/07/17 Срд 21:44:00  1022144
>>1021838
Слишком толсто.
Аноним 12/07/17 Срд 21:52:46  1022149
>>1021850
>Ну, отчасти это так, потому что именованный rvalue ведет себя как lvalue.
Про что несёт? rvalue или lvalue это свойство [под]выражения, что такое "именованный rvalue"?

> Более правильно было бы сказать - rvalue это неименованная величина получаемая из результата выражения или статик каста.
Более правильно было бы привести ссылку и/или цитату на стандарт или cppreference.
Аноним 12/07/17 Срд 21:54:36  1022152
>>1021854
>Если в push_back передавать объект с unique_ptr, поинтер нормально скопируется, или без std::move никак?
А самому проверить?
Аноним 12/07/17 Срд 22:00:10  1022155
>>1021862
>К слову, зачем c++ и джава ребята используют отладчик?
Разбирать, как сторонний код работает.

А ловить утечки или там data race в дебаггере и правда ненужно.
Аноним 12/07/17 Срд 23:13:55  1022193
>>1022149
>Про что несет?
>rvalue это свойство
Как-то даже грустно стало. А ведь когда 11 стандарт вводили об этом знал каждый. Похоже я слишком старый, скоро будут уже 2000++ года рождения закатываться. Стандарт, раздел 5, Expressions:

[ Note: An expression is an xvalue if it is:
(7.1) — the result of calling a function, whether implicitly or explicitly, whose return type is an rvalue reference
to object type,
(7.2) — a cast to an rvalue reference to object type,
(7.3) — a class member access expression designating a non-static data member of non-reference type in which
the object expression is an xvalue, or
(7.4) — a .* pointer-to-member expression in which the first operand is an xvalue and the second operand is
a pointer to data member.
In general, the effect of this rule is that named rvalue references are treated as lvalues and unnamed rvalue
references to objects are treated as xvalues; rvalue references to functions are treated as lvalues whether
named or not. — end note ]
struct A {
int m;
};
A&& operator+(A, A);
A&& f();
A a;
A&& ar = static_cast<A&&>(a);
The expressions f(), f().m, static_cast<A&&>(a), and a + a are xvalues. The expression ar is an lvalue.
— end example ]

Аноним 12/07/17 Срд 23:19:24  1022196
>>1022193
>Как-то даже грустно стало.
Ну это оттого, что ты нифига не знаешь.

> А ведь когда 11 стандарт вводили об этом знал каждый.
А я до сих пор знаю, в отличие от тебя.

> Стандарт, раздел 5, Expressions:
Стандарт, раздел 6.10 [basic.lval] http://eel.is/c++draft/basic.lval#1.note-1
[ Note: Historically, lvalues and rvalues were so-called because they could appear on the left- and right-hand side of an assignment (although this is no longer generally true); glvalues are “generalized” lvalues, prvalues are “pure” rvalues, and xvalues are “eXpiring” lvalues. Despite their names, these terms classify expressions, not values. — end note ]
Аноним 12/07/17 Срд 23:26:38  1022199
>>1022196
> я до сих пор знаю
> что такое "именованный rvalue"
Ловкая попытка съехать, но нет.

>Самый прикол в том, что r/lvalue относится не к значениям, а к выражениям.
>Despite their names, these terms classify expressions, not values
>6. Statements
>5. Expressions
Так вроде ты и просил объяснить тебе про выражения. Не очень понимаю твои претензии.


Аноним 12/07/17 Срд 23:29:34  1022201
>>1022199
Куда съехать? Зачем ты рандомно цитируешь названия разделов стандарта? Ты можешь ясно выражаться?

Я намекал, что "именованный rvalue" — это бессмысленное словоупотребление.
Аноним 12/07/17 Срд 23:31:29  1022203
>>1022201
>>Куда съехать
Хто здесь?

>> "именованный rvalue" — это бессмысленное словоупотребление
Да нет, это именно что rvalue который трактуется как lvalue. Вполне себе жизненное особенно в шаблонах.
Аноним 12/07/17 Срд 23:34:11  1022204
>>1022203
Покажи, что ты понимаешь под "именованный rvalue"
Аноним 12/07/17 Срд 23:37:32  1022206
>>1022204
>>1022193
Прочитай еще раз вот эту цитату из стандарта внимательно.
Аноним 12/07/17 Срд 23:42:42  1022208
>>1022206
> [ Note: An expression is an xvalue if...

Т.е., как я и говорил, lvalue/prvalue/xvalue (и их надклассы типа glvalue и rvalue) — это категория выражения.

Именованными бывают переменные, функции и т.д.

Ты предъявишь то, что ты называешь "именованный rvalue" или можно считать, что ты слился?
Аноним 12/07/17 Срд 23:59:01  1022215
8642582.jpg (51Кб, 720x544)
>>1022208
>что ты называешь "именованный rvalue"
>In general, the effect of this rule is that named rvalue references are treated as lvalues and unnamed rvalue
references to objects are treated as xvalues; rvalue references to functions are treated as lvalues whether
named or not

Может перевод слова "named" тебе не понятен?

>Именованными бывают переменные, функции и т.д.
Или все же понятен?

Как ты кстати назовешь:
int&& a ; ?

>что ты слился?
Понимаю что школотронство рвется наружу, но ты выбрал не тот тред чтобы его выпускать, его читают: ты, я, два с половиной залетных которые меняются каждый день.



Аноним 13/07/17 Чтв 00:04:36  1022218
>>1022215
Так и думал, что ты один из тех даунов, которые не отличают "rvalue" от "rvalue reference".
Или, более общó, value category от типа.

http://en.cppreference.com/w/cpp/language/value_category
Each C++ expression (an operator with its operands, a literal, a variable name, etc.) is characterized by two independent properties: a type and a value category. (курсив не мой)
Аноним 13/07/17 Чтв 00:20:07  1022227
>>1022218
>>1021850
Вот то что я пытался донести в оригинале, согласно твоей собственной ссылке:
Even if the variable's type is rvalue reference, the expression consisting of its name is an lvalue expression;

Ну, а понятие "named rvalue" ты можешь в стандарте почерпнуть оно много где используется.

>которые не отличают "rvalue" от "rvalue reference
Как ты кстати сделаешь именованный prvalue?
Аноним 13/07/17 Чтв 00:31:01  1022235
>>1022227
Ты, главное, не расстраивайся. Многие ньюфаги не отличают rvalue от rvalue reference. И задаются вопросами типа "я передал аргумент в функцию по rvalue-ссылке. Почему он не перемещается? Ведь для rvalue должен вызываться конструктор перемещения". Потом многие понимаю, почему, когда начинают отличать типы от категорий значений (type и value category).

Только ты вот этого не осознал до сих пор. У тебя на этот счёт какие-то неоформленные, туманные представления "ну эта, как его, именованный rvalue может вести себя как lvalue.... в шаблонах вот полезно... да..."

> Вот то что я пытался донести в оригинале
А я пытался донести, что словосочетание "именованный rvalue" лишено смысла.

> Как ты кстати сделаешь именованный prvalue?
Так же, как rvalue: никак.
Аноним 13/07/17 Чтв 00:35:36  1022242
>>1022235
>ньюфаги
Тебе все еще бомбит с моей толстоты? >>1022193
Ну извини :^)

Да, я хотел шлепнуть в продолжении шлангом по лбу с вопросом, а сюда что вставишь forward или move? Но я смотрю это уже сделал кто-то до меня.

>Так же, как rvalue: никак.
Двоечка молодой человек, идем и читаем собственную ссылку, там все есть http://en.cppreference.com/w/cpp/language/value_category
Аноним 13/07/17 Чтв 00:38:29  1022245
>>1022242
>Тебе все еще бомбит с моей толстоты?
Да, известный трюк. Облажался — объяви, что это ты просто толстил.

В общем, слив засчитан.
Аноним 13/07/17 Чтв 00:39:25  1022246
>>1022245
>известный трюк
Сказал человек, отвечающий на треть поста :^)
Аноним 13/07/17 Чтв 00:46:01  1022251
Вот поэтому я в русскоязычном интернете почти и не сижу. Очень токсичная атмосфера. Встретятся два дебила, и пытаются поднять свою самооценку за счет оппонента. Потом подключается остальная группа и начинается срач.
Аноним 13/07/17 Чтв 00:48:22  1022253
>>1022246
Да, для упрощения понимания небольшой postreference:

>Как-то даже грустно стало. А ведь когда 11 ?>стандарт вводили об этом знал каждый. >Похоже я слишком старый, скоро будут уже >2000++ года рождения закатываться.
Толстота это вот это /\ /\ /\ /\

>>1022251
Да ладно тебе, обычно таких буйных не попадается.

Аноним 13/07/17 Чтв 00:52:50  1022257
>>1022251
И правда, лучше б поделились толковым текстом для ньюфагов про все эти lvalue, rvalue и прочее
мимовечныйньюфаг
Аноним 13/07/17 Чтв 00:53:57  1022259
>>1022257
сено - lvalue, солома - rvalue
Аноним 13/07/17 Чтв 01:04:04  1022262
>>1022257
Так вы задавайте вопросы, у меня этот тред весит прикрепленным, могу отвечать иногда :^)

Вообще у яндекса были раньше неплохие видео:
https://www.youtube.com/watch?v=oQDOqB1asNw
Аноним 13/07/17 Чтв 01:40:44  1022268
>>1022242
>>ньюфаги
>Тебе все еще бомбит с моей толстоты?
С чего ты взял, что употребление слова "ньюфаги" означает, что мне "бомбит"? Я констатировал факт, что ньюфаги часто задают такие вопросы. Потому что правда задают.

Или тебе показалось, что я тебя обзываю ньюфагом?

>>1022242
>Двоечка молодой человек
А на каких IT-ресурсах ты ещё сидишь?
Аноним 13/07/17 Чтв 01:42:23  1022269
>>1022268
А вот и первый пост 0й ценности. Как и ожидалось после указания на очевидные ошибки.
Аноним 13/07/17 Чтв 01:48:35  1022270
>>1022269
Ой-вей. Ты-таки решил идти до конца и перебрать все модели поведения лузера.

Ну да, есть у тебя в голове каша из понятий со сходными названиями, и тебе на это указали. Это настолько уязвило твоё самолюбие?
Аноним 13/07/17 Чтв 02:14:31  1022280
>>1022251
>>1022253
Семён незаметен.
Аноним 13/07/17 Чтв 03:46:50  1022300
Итак.
Почему int a, a не int a? У переменной тип - указатель на интыжер, так какого хрена все пишут звёздочку около самого имени? Или ещё лучше, int a. Это вообще откуда пошло?

const int
const a; лол
Аноним 13/07/17 Чтв 03:50:03  1022302
>>1022300
Ну всё, мама меня не научила звёздочки вставлять.
КРЧ, проблема с расположением звёздочки, вот.
Аноним 13/07/17 Чтв 06:00:24  1023236

Подходит парень:
- Успокойтесь, у вас обычный гемоppой
Аноним 13/07/17 Чтв 06:07:42  1023661

Инженер не говоря ни слова лезет в карман, бумажку достает и говорит:
- Все, Изя
Аноним 13/07/17 Чтв 08:02:24  1023874
>>1022235
Можно пример ситуации из первого абзаца?
Аноним 13/07/17 Чтв 08:17:46  1023877
>>1023874
http://ideone.com/u9MpOA
Аноним 13/07/17 Чтв 09:52:31  1023907
>>1023877
Можно подробнее о том, как это работает? С конструктором вместо функции сработало бы?
Аноним 13/07/17 Чтв 10:13:35  1023932
>>1023907
>Можно подробнее о том, как это работает?
Нельзя, потому что это не работает.

> С конструктором вместо функции сработало бы?
Что именно?
Аноним 13/07/17 Чтв 10:16:55  1023933
>>1023932
Вместо make_unique поставить unique_ptr.
Аноним 13/07/17 Чтв 10:19:54  1023935
>>1023933
Это неважно.
Аноним 13/07/17 Чтв 10:31:27  1023944
>>1023935
Так почему этот код не работает?
Аноним 13/07/17 Чтв 10:36:07  1023947
>>1023944
Потому что в инициализаторе мембера ptr находится lvalue и компилятор пытается вызвать конструктор копий, который у unique_ptr удалён.
Аноним 13/07/17 Чтв 11:05:03  1023961
Если в требованиях указано "Хорошая алгоритмическая база", что мне следует вспомнить перед собеседованием, чтобы не обосраться?
Аноним 13/07/17 Чтв 11:44:03  1023982
>>1023961
Если бы всё так просто было.
Аноним 13/07/17 Чтв 12:48:12  1024021
>>1023961
Это значит, что ты будешь ковырять всю ту же легаси-хуйню, что и все, просто на собеседовании хуесосы будут изображать из себя ГУГЕЛЬ и просить на доске перевернуть бинарное дерево
Аноним 13/07/17 Чтв 12:56:46  1024027
Безопасно ли так работать со списком? Обе функции вызываются несколькими тредами. Всмысле не наебнется ли list во время foreach если ремувнуть элемент по итератору

class SomeClass {
boost::mutex m_mtx;
std::list<Elem> m_list;

...
}

void SomeClass::removeF( std::list<Elem>::iterator _elem_it ) {
m_mtx.lock();
m_list.erase( _elem_it );
m_mtx.unlock();
}

void SomeClass::Scan() {
for ( const auto & it : m_list ) {
m_mtx.lock();
DoSomeConstShit( it );
m_mtx.unlock();
}
}
Аноним 13/07/17 Чтв 13:39:03  1024053
>>1021853
Если я буду писать свою ось, то только доказательным методом. Сделать это на плюсах без серьёзной потери производительности невозможно.
Аноним 13/07/17 Чтв 16:29:16  1024178
>>1024027
Кажись тебе надо переписать цикл. Потому что ты можешь удалить элемент после взятие ссылки и до захвата мютекса.
Аноним 13/07/17 Чтв 17:11:27  1024199
Помогите настроить code::block для linux.
Аноним 13/07/17 Чтв 17:21:15  1024203
>>1024199
Помог.
Аноним 13/07/17 Чтв 17:30:06  1024208
>>1024027
Неа, удаление элемента из списка не атомарная операция. Перед проход по списку в цикле захватывай мьютекс.
И еще:
1. Для захвата мьютекса используй lock_guard (RAII, же).
2. В C++11 мьютексы есть в STL.
3. Изменение разделяемой структуры из нескольких ниток кривой дизайн. В дальнейшем много проблем можно огребсти. Всю многопоточность стоит сводить к схема поставщик\получатель (через thread-safe очереди).
Аноним 13/07/17 Чтв 18:36:45  1024245
>>1024203
Спасибо. А как добавить/убрать компилятор?
Аноним 13/07/17 Чтв 19:43:58  1024301
Анонч, тут ерунда какая то. MVS MFC
Вот есть код, призванный передать мне результат выполнения комманды из консоли и он отлично работает.

char buffer[128];
std::string result = "";

FILE* pipe = _popen("ping 8.8.8.8", "r");
if (!pipe) throw std::runtime_error("popen() failed!");
while (!feof(pipe)) {
if (fgets(buffer, 128, pipe) != NULL) {
result += buffer;
}
}
_pclose(pipe);

Но стоит заменить мне тренировочную "ping 8.8.8.8" на реальную "ffprobe.exe 1.webm", то всё. Вывода нет, реакции нет.

При этом, в тестовом консольном проекте "ffprobe.exe 1.webm" даёт адекватный вывод.
ЧЯДНТ?
inb4: Использую MFC
Аноним 13/07/17 Чтв 19:44:38  1024303
>>1024301
С разметкой продолбался, но суть понятна.
Аноним 13/07/17 Чтв 19:58:36  1024318
>>1024301
При этом, с исполнением команды всё явно ок, т.е FILE* pipe = _popen("ffplay.exe 1.webm", "r"); запускает 1.webm в любом случае.
Аноним 13/07/17 Чтв 21:59:07  1024465
>>1024301
http://forums.codeguru.com/showthread.php?246447-_popen()-in-MFC

Тут пишут, что всё MFC виноват, слишком слоупочный.
Попробуй как-то так не бейте - лучше обоссыте:
#include <future>
...
void something();
...
auto handle = std::async(something);
handle.get();
Аноним 13/07/17 Чтв 23:02:26  1024533
>>1024465
Спасибо!
Аноним 14/07/17 Птн 00:43:06  1024588
Пишу сюда ибо тут должна быть более знающая аудитория.
Решил вкатиться в программирование ради интереса. После изучения большей части синтаксиса чистого Си навалила скука. И тут я открыл для себя OpenGL. Все бы шло замечательно, но в учебнике где используется чистый Си, уже сразу с основ идут нерабочие примеры и не только у меня эта проблема. Глянув новые книги и видеокурсы, стало ясно что везде используются плюсы. Вдобавок, как я понял, гуи пишутся с использованием qt,
а там опять плюсы.
Короче, для написания приложений с гуи и трехмерной графикой годятся только плюсы? Или есть альтернативы для чистого Си? (ну если не считать gtk+ для гуев и старой книги по OpenGL. Просто страшно начинать изучать плюсы после беглого просмотра тредов.
Аноним 14/07/17 Птн 01:11:48  1024598
>>1022215
>именованный rvalue
>named rvalue references
Ёбу дал?
Аноним 14/07/17 Птн 01:14:04  1024600
>>1024598
О чем вообще это было?
Аноним 14/07/17 Птн 01:18:05  1024602
>>1016662 (OP)
Как вывести std::basic_string<TCHAR> на консоль?
Аноним 14/07/17 Птн 01:19:53  1024604
>>1024602
std::wcout << string;
Аноним 14/07/17 Птн 01:23:04  1024605
>>1023961
Кормена.
>>1024600
О том, что один пытается утереть другого, но сам не читает то, что вставляет.
>>1024604
TCHAR - это либо WCHAR, либо CHAR в зависимости от макроопределения UNICODE (или как там).
>>1024602
Твои варианты:
WriteConsole(string.c_str())
std::cout<<string //если без юникода
std::wcout<<string //а вот здесь ты жестоко наебёшься, в винде это не работает от сллова "никак"
Аноним 14/07/17 Птн 01:30:28  1024608
>>1024605
Я про то, о чем спор вообще был? Я так и не смог понять. Так там два дебила говорили об одном, один просто с сайта саттера линки таскал, второй из доки страуса, лол. При этом один поехавший дед, второй селюк не знающий английский. Крестовое комьюнити короч.

>TCHAR - это либо WCHAR, либо CHAR
Так вроде wcout перегружен для обоих.

http://cpp.sh/37q2h
Аноним 14/07/17 Птн 01:31:23  1024609
>>1024608
А да, для строки надо в таком случае обязательно c_str получается еще въебать
Аноним 14/07/17 Птн 01:32:12  1024610
>>1024609
Оттакот
http://cpp.sh/575v
Аноним 14/07/17 Птн 02:00:28  1024616
>>1024604
>>1024605
>>1024605
Мне нужно, чтобы моя программа в зависимости от настроек могла хранить в одном и том же std::map или ANSI-строки или UNICODE-строки, а потом выводить этот map в консоль. Как это реализовать без быдлокода?
Аноним 14/07/17 Птн 02:00:29  1024617
>>1024602
>TCHAR
Ненужно.
>>1024605
>TCHAR - это либо WCHAR, либо CHAR в зависимости от макроопределения UNICODE (или как там).
Самое идиотское, что могла придумать Microsoft — что приложения можно будет собирать для разных версий Windows (NT и не-NT) просто определением или не определением одного макроса.

Если тебе так нравится кодить под WinAPI, то лучше просто забудь про то, что UNICODE может быть НЕ определён. Считай, что он всегда определён и TCHAR=WCHAR.

Если ты, конечно, не собираешься компилять под Windows 95.
Аноним 14/07/17 Птн 02:02:48  1024619
>>1024616
Храни все в UNICODE, если тебе важно именно содержимое строк. Если тебе необходимо иметь и то и то в одном массиве одновременно - погугли type erasure container.
Аноним 14/07/17 Птн 09:32:03  1024713
>>1024588
Лучше доучи, базовое с++ ооп за один день берётся, а std'шный мусор OpenGL/qt не юзают, т.к. имеют уже свои более удобные аналоги.
>>1024617
На все winaip функции есть варианты w/t/c. Всего-то надо один раз загуглить их. Однобайтовое говно всегда может понадобится, не все сторонние либы хотят юзать юникод.
Аноним 14/07/17 Птн 09:34:03  1024716
>>1024713
>Однобайтовое говно всегда может понадобится, не все сторонние либы хотят юзать юникод.
Т.е. ты вместо обёрток над вызовами либ предлагаешь дизайнить всю аппликуху вокруг либы?
Аноним 14/07/17 Птн 09:41:21  1024719
>>1024716
Это же от конкретной либы зависит, как там будет удобней. Если там есть внутренние калбаки, или может она вообще на кодировке utf8 работает. Некоторые вещи бывает проще делать модульно, чем на всё свои обёртки пилить.
Аноним 14/07/17 Птн 09:42:46  1024720
>>1024719
> или может она вообще на кодировке utf8 работает
О, это правильная либа.
Аноним 14/07/17 Птн 10:15:42  1024737
>>1024713
> а std'шный мусор
В чем мусорность std?
Аноним 14/07/17 Птн 10:16:29  1024739
>>1024737
Не обращай внимания, тут это часто вбрасывают.
Аноним 14/07/17 Птн 12:31:05  1024797
>>1024737
Для меня это - Нечитабельный, неюзабильный, сферический в вакууме.
Оригинальная идея была хорошая, людям предлагалось не изобретать велосипеды, плюс помогает делать код более кроссплатформенным.
Но всё это разбилось об реальность ооп в с++, где для эффективного использования std приходилось значительно повышать свой уровень знания языка, типа следить за лишними копированиями, продлевать время жизни объектов и.т.д. Т.е. либа которая должна была упростить жизнь, её начала усложнять. Основные разработчики сторонних либ и фреймворков решили отказаться от использования унифицированного std в пользу оптимизации своих решений. Т.к. основная масса разработчиков всё же не пишут сферические хелловорлды, то брать за основу именно std им нет смысла.
Сейчас новые стандарты c++ направленны на изменение языка именно в сторону упрощения использования std, но люди ленивые, и стек технологий тоже не спешит перестраиваться под это. Потому это остаётся не нужным, хотя гики всегда есть. Можешь и ты таким стать, а люди которые будут потом сопровождать твои проекты будут тебе очень "благодарны".


Аноним 14/07/17 Птн 12:38:11  1024801
>>1024797
Ну хуй знает чувак, какой язык - такая и стандартная библиотека. Сам stl не пользую, пользую разные .h-only либы для контейнеров и алгоритмов, а в основном рабочем проекте свой фреймворк. Но есть все-таки области применения, во первых - на stl просто учиться, понимать концепции. Во вторых - мелкие проекты до 250 000 строк включительно вполне себе неплохо ложаться на stl, ввиду явной простоты логики и возможных зависимостей. Бывают конечно адский сложные маленькие проекты, но ты меня понял.
Аноним 14/07/17 Птн 12:39:14  1024802
>>1024608
>Так вроде wcout перегружен для обоих.
Будет сложно запомнить то, что в wcout нельзя выводить вчары. Лучше вообще не использовать его.
>>1024616
std:variant или своя структурка с мемберами string и wstring. Если один пустой, то данные в другом. Очень странное задание.
>>1024713
>а std'шный мусор OpenGL/qt не юзают,
У кучи Кутэшных контейнеров есть совместимость или метод преобразования с/между std-контейнерами. Ты можешь писать на Кутэ без std, но ты почти всегда сможешь заюзать std из Qt.
>>1024713
>На все winaip функции есть варианты w/t/c.
Все современные используют wchar.
>>1024797
>типа следить за лишними копированиями
У тебя ничего не взорвётся от лишних копирований, и есть множество оптимизаций, включая тот же (N)RVO, а методы контейнеров инлайнятся.
>Основные разработчики сторонних либ и фреймворков решили отказаться от использования унифицированного std в пользу оптимизации своих решений.
Лолшто.
>Потому это остаётся не нужным,
Кому?
Аноним 14/07/17 Птн 12:43:07  1024804
>>1024802
Я не он но,
>Лолшто.
Это так, чем дальше в лес, тем меньше крупных проектов на stl. Посмотри гугловый софт, фейсбучную опенсорсную часть, топовые гитхабовские проекты. В проприоритарных проектах я его лично вижу все реже. Единственный кто его еще активно продвигает в коде - это Microsoft (который его через хуй поддерживает, лол).

>У тебя ничего не взорвётся от лишних копирований
Так эт, если нет zero-cost-abstractions то кресты это хуита полнейшая без задач.
Аноним 14/07/17 Птн 12:51:31  1024815
>>1024616
Родной, ASCII - подмножество UTF-8.

На пальцах. Unicode это не кодировка, это метод. Кодировки это UTF-8/16/32. UTF-8 отличается тем, что в зависимости от кодируемого диапазона меняется кол-во байт представления символа. И внезапно символы 0-127 кодируются одним байтом.
Аноним 14/07/17 Птн 13:06:36  1024821
>>1024801
Мейби, каждому своё, но лично мне было бы лень учить то, что с высокой степенью не понадобится.
>>1024802
> почти всегда сможешь заюзать std из Qt
Это напоминает "Как сделать троллейбус из буханки хлеба". Читай контекст вопроса: человек спрашивал как ему проще всего перейти, а не как ему заморочиться.
> У тебя ничего не взорвётся от лишних копирований
Я говорил "эффективного использования", а побыдлокодить можно на чём угодно.

Аноним 14/07/17 Птн 13:15:26  1024825
>>1024804
>Так эт, если нет zero-cost-abstractions то кресты это хуита полнейшая без задач.
Так в том и прелесть, что в нагруженном коде ты можешь обойтись без лишних аллокаций, а в гуйне, например, хуярить как проще, лишь бы работало. В Qt, например, сплошной пимпл, аллокация на аллокации, но работает все равно быстрее жабы или браузерной параши.
Аноним 14/07/17 Птн 14:36:30  1024865
>>1024825
>В Qt, например, сплошной пимпл, аллокация на аллокации, но работает все равно быстрее жабы или браузерной параши.
И вот после этой хуйни подавай им нормально работающий KDE без лагов.

Вообще, анон прав - STL-контейнеры редкостная залупа для хуяк-хуячанья, причём на редкость неудобная, в которую полтора десятка лет тащили невладеющие строки.
Еще через десяток лет, когда потребности опять поменяются, они туда протащат наконец таки ренджи, спаны, интрузивные контейнеры, оптимизацию для мелких векторов и строк, контейнеры которые можно будет юзать с униками без их собственных рефкаунтеров, еще через 2 десятилетия мб локфри контейнеры и конкурентные очереди с блекджеком притащат - и это все опять окажется никому нахуй не нужно как string_view, который у каждого проекта уже свой, либо как футуры с асинками, которые просто тупо уебские настолько, что их все сами под свои нужды реимплементируют.
Аноним 14/07/17 Птн 14:57:11  1024884
>>1024802
>в wcout нельзя выводить вчары
Почему?
Аноним 14/07/17 Птн 15:03:03  1024892
>>1024865
где и кем работаешь? Хоть примерно.
Аноним 14/07/17 Птн 15:18:31  1024899
>>1024892
По утрам - кассиром в макдаке, по вечерам грузчиком.
Аноним 14/07/17 Птн 15:19:44  1024900
>>1024899
По ночам - макдаком в кассире.
Аноним 14/07/17 Птн 15:30:17  1024909
>>1024900
Это заработок методом рекурсивного спуска макдака в кассира.
Аноним 14/07/17 Птн 15:33:34  1024913
>>1024865
не верьте этому пиздюченку, он не щарит на самом деле
Аноним 14/07/17 Птн 15:41:41  1024918
>>1024804
>Это так, чем дальше в лес, тем меньше крупных проектов на stl. Посмотри гугловый софт, фейсбучную опенсорсную часть, топовые гитхабовские проекты.
Охуительные инсайдерские истории. Неполенился, залез на гитхаб, взял первые четыре игровых движка: cocos2d, godot, cryengine, sfttech. Во трех используются stl контейнеры. В godot, написали свою реализацию контейнеров, с интерфейсом аналогичным stl, ололо.

>>1024865
>И вот после этой хуйни подавай им нормально работающий KDE без лагов.
Попробуй использовать нормальную ось вместо линуха.
>ренджи, спаны, интрузивные контейнеры, оптимизацию для мелких векторов и строк, контейнеры которые можно будет юзать с униками без их собственных рефкаунтеров, еще через 2 десятилетия мб локфри контейнеры и конкурентные очереди с блекджеком
Половина из этого есть в бусте, вторую половину добавлять бессмысленно, поскольку покрывает какие-то весьма специфические случаи (как например локфри контейнеры). А ты ебанат, если этого не понимаешь
Аноним 14/07/17 Птн 16:06:07  1024933
>>1024918
>взял первые четыре игровых движка
>гугловый софт, фейсбучную опенсорсную часть
Не ну сравнил так сравнил ни прибавить не убавить.

>весьма специфические случаи (как например локфри контейнеры)
Хотя понятно, ты просто манька из /gd/ за еду.


Аноним 14/07/17 Птн 16:12:26  1024939
>>1024865
Оптимизации для мелких строк/контейнеров втащили кстати, но не по Александреску, а просто на стеке кусок хярят в теле класса.
Аноним 14/07/17 Птн 16:16:44  1024941
>>1024918
>Попробуй использовать нормальную ось вместо линуха.
Дык, для станционного пека выбора и нет. На ноутах есть мак (который может зависнуть, но интерфейс у него никогда не лагает, даже при мертвой хватке ядра).
>Половина из этого есть в бусте,
В бусте только интрузив контейнеры из этого списка, остальное — тащи откуда хочешь, из кучи реализаций gsl-а, фейсбучной библиотеки, разных реализаций ренджей, из llvm если хочешь, с миру по нитке блять. В итоге вместо того чтобы просто сесть и писать — иди ищи и трахайся с деплоем тыщи сторонних библиотек, со своими зависимостями, странностями и просто кодстайлом.
>какие-то весьма специфические случаи (как например локфри контейнеры)
Так. 2017-й год. Уже даже бюджетные процессоры все поголовно 6-8 ядерные, даже в ебучий STL, который развивается со скоростью ребёнка с синдромом дауна, запилили паралельные алгоритмы, можель памяти, обертки над тредами и мутексами и все вот это.
Что же говорит анон об этом? Нинужна! Ой, иди нахуй просто.
>>1024939
Щито? Я только недавно на последнем шланге гонял бенчмарки фоллиевского small_vector, который этим занимается, и было не похоже на это. Пруфца бы.
Аноним 14/07/17 Птн 16:29:54  1024947
>>1024941
> но интерфейс у него никогда не лагает,
У меня лагал, когда хром отжирал всю память.
Аноним 14/07/17 Птн 16:32:02  1024948
Как анон относится к Qt: годнота или говно?
Аноним 14/07/17 Птн 16:32:38  1024950
>>1024941
>Щито?
Не, я тебе напиздел короч, они только опциональный COW в строки впилили, small_alloc остался на уровне пропозала. А я думал в 17 примут.

>>1024948
Вынужденная необходимость, когда есть дешевые крестомакаки и ты не можешь нанять шарпистов/джавистов.
Аноним 14/07/17 Птн 16:36:34  1024951
>>1024947
Ну хуй тебя знает. У меня CLion постоянно уходит в свопы почти при каждом ручном инклуде (автоматические из подсказок моментально подставляются, лол) или при попытках навигации по подключенным где-то в залупе объявлениям, виснет намертво на 10-20 секунд, но интерфейсу похуй - экраны листаютсятак же плавно, курсор вообще никогда не фризится.
Аноним 14/07/17 Птн 16:38:15  1024953
>>1024951
CLion это говно ебаное, какое еще поискать. Пользуй что угодно другое и будет ок. Я например когда приходится в линукса выйти пробздеться использую codelite.
Аноним 14/07/17 Птн 16:42:30  1024954
>>1024948
Вопрос уровня: как относится к гугловскому кодстайлу? Трупстрауса же пишет с 4 отступами, а эти пидоты с 2, так это выскочкино говно или гениальное гугловское изобретение?
>>1024953
Дык, на полноценной пеке с 32 гигами и линуксом он летает (зато курсор таки фризится), другое дело что на маке альтернатив нету вообще - икскод говнище которое умеет даже нормально автокомплитить плюсы и вечно в куче багов, кодлайт, кдевелоп и прочие выглядят на макоси как и все что пишется для линукса а-ля вырвиглаз, остается только культя и цлион. Культя в системное сглаживание не умеет и это тоже пиздец, вот так.
Аноним 14/07/17 Птн 17:00:56  1024969
>>1024948
>Как анон относится к Qt
ну вот я для себя сделал такой вывод: хочешь относительно без проблем устроится крестомакакой, то у тебя два пути
- первый это игрострой, ну а в россии щас это мобилки, по сути - что там надо задрачивать, понятно
- и остальные вакансии - это надо задрачивать qt
к сожалению
вот так все просто
Аноним 14/07/17 Птн 17:03:06  1024971
>>1024954
кстати, в этом то и преимущество табов - их отображение ты можешь настроить как 2 так и 4 пробельных места
таким образом, в коде табы, а у разных людей на проекте отображается, как им удобно
Аноним 14/07/17 Птн 17:04:31  1024974
>>1024954
зачем корежишь фамилии? представь, твою фамилию переиначат, будет же обидно, не так ли
Аноним 14/07/17 Птн 17:08:42  1024975
>>1024974
Не так.
Аноним 14/07/17 Птн 17:14:29  1024977
>>1024971
Пробелы выиграли войну, просто признай и сдайся.
>>1024974
Мне похуй будет.
Аноним 14/07/17 Птн 17:41:19  1024984
>>1024815
> в зависимости от кодируемого диапазона меняется кол-во байт представления символа
ЕМНИП, можно опкодом выбрать другую страницу и если символы неподалёку, т оможно по байту на символ для любого языка.
>>1024804
>Так эт, если нет zero-cost-abstractions то кресты это хуита полнейшая без задач.
Если совсем грубо - то да, но тебе не нужны зиро-кост абстракшнз на всё вообще. Про контейнеры я уже сказал.
>>1024821
>Читай контекст вопроса: человек спрашивал как ему проще всего перейти, а не как ему заморочиться.
Ты удивишься, но в самом Qt подводных камней порядочно, чего только COW стоит. Контейнеры из Кут очень похожи на контейнеры из stl. ОП вопроса страшился не эстээля, а количества премудростей в плюсах.
>Я говорил "эффективного использования"
"эффективное" != "математически оптимальное"
>>1024884
Потому что виндовая CRT (с помощью которой реализована STL) с багом, на который МСу насрать.
Аноним 14/07/17 Птн 20:58:36  1025116
Где взять этот ваш великий и ужасный СТАНДАРТ?
Как вообще его читать-понимать и нужно ли?
Аноним 14/07/17 Птн 21:02:31  1025121
>>1024941
>просто сесть и писать
Смешная шутка.
>В бусте только интрузив контейнеры из этого списка
Как насчет boost::lockfree? Как я понимаю, тебя он не устраивает? Ну так пердолься с либами, раз не устраивает, это сугубо свои половые трудности. То что тебе нужно это еще не значит что оно должно быть в стандарте, понимаешь?

>>1024933
>Не ну сравнил так сравнил ни прибавить не убавить.
Мои пруфы не пруфы? Понемаю, бывает.



Аноним 14/07/17 Птн 21:25:50  1025133
>>1025116
а) купить
б) украсть
в) качнуть последний драфт, публично выложенный комиссией перед утверждением (бывают мелкие исправления перед утверждением)
>Как вообще его читать-понимать
а) в глубину, ЕВПОЧЯ: не понимаешь термин - ищешь определение
б) с начала
Аноним 14/07/17 Птн 21:28:15  1025135
>>1025116
Предлагаю забить.
Аноним 14/07/17 Птн 21:40:13  1025143
>>1025121
> То что тебе нужно это еще не значит что оно должно быть в стандарте, понимаешь?
Я щас кекнул: ну вот мне нахуй не нужна STL. По твоей логике её от туда можно просто выпилить и не тратить время - все сделают в бусте, а комитет пусть лучше прикладывает силы к языку.

А вообще, ахуенные какие-то у тебя доводы. Долбоёбский лист из STL, который копирует каждый элемент, хранит овердохуя лишней инфы и просто на кой-то хуй рефкаунтит содержимое, из-за чего при малейших лагах придется либо писать в C-style либо тащить буст - нужен, как и вектор со строкой которые будут алоцировать хуй знает сколько памяти когда нужно десяток символов в него закинуть, что можно было бы сделать на стеке - тоже зачем-то нужен, а вот нормальный набор контейнеров под разные задачи, который есть в любом нормальном языке (я сейчас не про расты с говнами) - нахуй не упали. Ну и любитель же ты говна.
Аноним 14/07/17 Птн 21:51:08  1025161
>>1025143
>на кой-то хуй рефкаунтит содержимое, из-за чего при малейших лагах придется либо писать в C-style либо тащить буст - нужен
Где карту получали туда и идите.
Аноним 14/07/17 Птн 21:58:45  1025166
Посоны, поясните зачем нужны прекомпилированные заголовки?
Я так понимаю: Из-за проблем с кросс-компиляцией и бинарной совместимостью, некоторые люди решили делать все в заголовках, чтобы принудительно компилировать нужно было всем, а не таскать вероятно не совместимые бинари. Далее, если h-only либ очень много и они большие (boost) компиляция проекта увеличивается в разы. Теперь мы заводим свой prcomp.c + precomp.h, которые служат только для того, чтобы получить объектный файл, который не нужно будет часто перекомпилировать, и который не нужно таскать по репозиториям.
Как-то так?
Аноним 14/07/17 Птн 21:58:52  1025167
>>1025143
>> То что тебе нужно это еще не значит что оно должно быть в стандарте, понимаешь?
>Я щас кекнул: ну вот мне нахуй не нужна STL. По твоей логике её от туда можно просто выпилить и не тратить время
Ёю твою мать...
Аноним 14/07/17 Птн 22:01:29  1025168
>>1025166
Предкомпилированные заголовки (не)нужны потому, что один и тот же заголовок может быть включён в несколько исходников. Кэширование результата компиляции заголовочного файла (в который может быть включено всё, что используется во всей программе) сильно ускоряет компиляцию.
Аноним 14/07/17 Птн 22:04:20  1025171
>>1018248
Жаль что платный. На торрентах еще не выложили?
Аноним 14/07/17 Птн 22:06:14  1025173
>>1024954
>рупстрауса же пишет с 4 отступами, а эти пидоты с 2, так это выскочкино говно или гениальное гугловское изобретение
Экономия места в кодбазе.
Аноним 14/07/17 Птн 22:10:24  1025174
>>1025168
>Кэширование результата компиляции заголовочного файла (в который может быть включено всё, что используется во всей программе) сильно ускоряет компиляцию.
gcc и msvc умеют держать это на диске, или на каждый сеанс компиляции новый кэш делается?
Аноним 14/07/17 Птн 22:13:05  1025177
>>1025167
Я просто инвертировал твое утверждение, бывшее отрицательным по отношению ко мне — с точки зрения дискретной математики все ок, надуй иди.
>>1025173
Да нет, я вот недавно попробовал сам — и подсел. Ахуенно.
Аноним 14/07/17 Птн 22:15:28  1025180
Untitled.png (38Кб, 1242x385)
Чому?
Аноним 14/07/17 Птн 22:39:46  1025193
>>1025180
Переустанови Windows
Аноним 14/07/17 Птн 22:40:47  1025194
>>1025180
очевидно не совпадают кодировки.
Аноним 14/07/17 Птн 22:43:53  1025199
>>1025194
Ну окей, делать-то что.
Может есть бустовая альтернатива этому говну?
Аноним 14/07/17 Птн 22:47:41  1025200
>>1025199
Тебе нужно японский текст из utf-8 в кодировку для названий виндовых файлов сделать? Гугли как это делается на чем тебе нужно.
И проверь еще в какой кодировке твои исходники.
Аноним 14/07/17 Птн 22:51:31  1025202
>>1025200
https://msdn.microsoft.com/ru-ru/library/windows/desktop/dd317748(v=vs.85).aspx

Майки тут божатся, что для ntfs используют unicode. Попробуй в каком-нибудь Notepad++ пересохранить исходник в utf-8.
Может еще как-то студию можно допердолить.
Аноним 14/07/17 Птн 22:53:22  1025205
>>1025174
Гугли сам. Если я правильно понял - без предкомпилированного заголовка им придётся компилировать его в каждой единице трансляции.
>>1025177
>Я просто инвертировал твое утверждение
1) Не моё.
2) "Инвертируя" (лолкак) утверждение, ты не оспариваешь его.
>>1025180
>CreateDirectoryA
>L"хуй"
Твоя стопа умерла в зародыше.
Аноним 14/07/17 Птн 22:54:29  1025206
>>1025200
Не совсем, в принципе, я до конца не понимаю что нужно делать.
Идея в том, чтобы сделать двухсторонний преобразователь из юникода в аски, чтобы работало с любыми символами.

К примеру, банально создать папку через CreateDirectoryA, или это функцией невозможно создать "Jхуй花咲くいろは2" ?

>>1025202
Все в utf-8, проверил даже.

Аноним 14/07/17 Птн 22:55:04  1025207
>>1025202
1) Unicode - это не utf8 (что такое unicode() - даже не знаю).
2) В каком месте описания CreateDirectoryA написано, что ты можешь передать UTF-8 и получить читаемый текст?
Аноним 14/07/17 Птн 22:56:24  1025208
>>1025207
unicode() -- toUTF8()
Аноним 14/07/17 Птн 22:56:54  1025209
Почему фьючерсы называются именно так? Что это значит?
Аноним 14/07/17 Птн 22:57:11  1025210
>>1025206
MSDN открой-то, блядь.
Аноним 14/07/17 Птн 23:02:50  1025213
Untitled.png (36Кб, 1387x496)
>>1025207
Да я дурачок просто. Оно же создает какую-то поеботу с какими ебнутыми символами, значит что-то происходит.

>>1025210
То есть Utf-8 не применим в WinAPI ?



Ладно, основная причина - gcc не открывает файлы по std::wstring.
Как с этим справиться?
Аноним 14/07/17 Птн 23:08:11  1025215
Какую IDE прикрутить к mingw?
Аноним 14/07/17 Птн 23:10:16  1025218
>>1025213
>То есть Utf-8 не применим в WinAPI ?
Бинго, блядь.
>Как с этим справиться?
Никак.
http://en.cppreference.com/w/cpp/io/basic_fstream/open
Открывай файлы через WinAPI.
Олсо, обрати внимание на эту строчку:
void open( const std::filesystem::path &filename,
ios_base::openmode mode = ios_base::in|ios_base::out );
(4) (since C++17)
И клацкни ссылку на std::filesystem::path. Там поймёшь сам. C++17 включается в gcc экспериментально через -std=c++1z
Аноним 14/07/17 Птн 23:11:31  1025220
>>1025215
Блокнот code::blocks
Аноним 14/07/17 Птн 23:36:52  1025238
>>1025220
Можно даже редактор кода, лишь бы подсветка была.
Code blocks не понравился
Аноним 14/07/17 Птн 23:53:27  1025246
>>1025238
notepad++, подсветка есть.
Аноним 15/07/17 Суб 00:03:54  1025258
Нравится Visual Studio Code, но под линуксом в нем отвратительная подстветка. В каком файле хранится описание охуенной виндовой подсветки?
Аноним 15/07/17 Суб 00:07:18  1025261
>>1025258
https://stackoverflow.com/a/29961309/6889930
Аноним 15/07/17 Суб 00:18:38  1025268
>>1025121
Пруфы на что?
Аноним 15/07/17 Суб 00:51:52  1025292
>>1025116
employer тебе не предоставляет?
Аноним 15/07/17 Суб 01:02:19  1025301
>>1025246
Там автокомплита нет
Аноним 15/07/17 Суб 01:02:20  1025302
>>1025213
>Ладно, основная причина - gcc не открывает файлы по std::wstring.
>Как с этим справиться?
Есть такая либа, называется nowide. Есть как в виде boost::nowide, так и в самостоятельном виде. Intent — избавиться от необходимости использовать некоторые w- функции и сделать это переносимо. Сам не пробовал, т.к. я, слава б-гу, не спермоблядь. Но, как я слышал, пользователям данной ОС она нравится.
Аноним 15/07/17 Суб 11:15:29  1025346
Когда уже полностью портируют llvm-гомосятину на винду?
Заебался использовать сlang вместе с уебищным mingw или msvc.
Аноним 15/07/17 Суб 11:23:58  1025350
>>1025346
Никогда, это просто нахуй никому не нужно.

Кстати, посмотрел http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4656.pdf и... блять, ну нахуя это говно (asio) тащить в стандарт? Надеюсь и в 20-м отклонят нахуй.
Аноним 15/07/17 Суб 12:22:30  1025357
>>1025350
> Надеюсь и в 20-м отклонят нахуй.
Оставь надежду. Я надеялся что filesystem не смогут протащить — но нет, протащили.
Аноним 15/07/17 Суб 14:37:23  1025397
Почему лучше VS еще ничего не сделали?
Аноним 15/07/17 Суб 14:44:59  1025403
>>1025397
define лучше
Аноним 15/07/17 Суб 15:23:52  1025416
>>1025357
Дык, fs хоть немного попахивает годнотой.
Это же чудище требует создавать по 5 классов ради того чтобы послать ебаный пинг и получить ответ.
Аноним 15/07/17 Суб 15:53:14  1025422
>>1025403
ЧО?
Аноним 15/07/17 Суб 16:16:02  1025435
>>1025397
CLion.
А отсутствие профайлера он окупает быстрым стартом и настраевыми хоткеями (можно шлятся по коду ебаной средней кнопкой мышки! гипгип ура) и наличием человеческого мультикурсора (в студии, как и остальных пирдольках от спермы, даже с этим в 2017 проблема).
Аноним 15/07/17 Суб 16:50:47  1025443
>>1025435
Он безбожно тормозит, в отличие от VS, которая хоть как-то сносно работает на моем ноутбуке.
Аноним 15/07/17 Суб 16:57:50  1025447
>>1025443
Он тормозит только во время индексации, после летает. VS тормозит всегда по-немножку, лол.
Аноним 15/07/17 Суб 17:00:48  1025448
>>1025447
Ну я вот просто думаю, что лучше VS + VS Assist X/Resharper C++ или CLion.
Аноним 15/07/17 Суб 17:01:24  1025449
>>1025448
И да, пока что только вкатываюсь в Си, кресты буду учить потом.
Аноним 15/07/17 Суб 17:03:25  1025451
>>1025447
Кстати, тормозит Clion в основном при выделении кода, это прямо ощутимо замечается.
В VS такого нет
Аноним 15/07/17 Суб 17:08:17  1025453
>>1025422
Хуй через койчо, дебич.
>>1025443
>тормозит, в отличие от VS,
Телл ми мор фаггит. Последняя нативная студия - 14.
>>1025449 >>1025448
Это просто, блядь, неважно: Клион или Студия.
Аноним 15/07/17 Суб 17:11:01  1025455
>>1025453
>Последняя нативная студия - 14.
Если про полностью нативную говорить - 10, вообще-то. После начались лаги (они поэтампно портировали на дотнет).
Аноним 15/07/17 Суб 17:16:11  1025458
>>1025455
В 10 и ниже нет почти нихуя, с тем же успехом можно VS Code использовать с плагинами
Аноним 15/07/17 Суб 17:19:05  1025459
>>1025458
Там нихуя нет потому что они в то время таким образом двигали дотнет, и наплодили решарперов с прочими асистентами.

Но не суть - это была последня нативная реинкарнация студии.
Аноним 15/07/17 Суб 17:22:29  1025460
>>1025459
И что же сейчас используют в промышленной разработке?
CLion? VS? Или что-то другое?
Аноним 15/07/17 Суб 17:31:46  1025462
>>1025460
Кому что нравится.
Вообще, вне винды конкурентов клиону и нет. Нихуя не умеющие культи, кодлайты, вено забагованные в говнище кдевелопы и икскоды...
Аноним 15/07/17 Суб 18:10:31  1025471
>>1025462
QtCreator
Аноним 15/07/17 Суб 18:46:51  1025482
>>1025471
>Нихуя не умеющие культи
>Этот ВЕЗДЕ ОДИНАКОВО УЕБИЩНЫЙ рендеринг шрифтов
>через раз работает с cmake-проектами
Аноним 15/07/17 Суб 20:18:30  1025545
>>1025482
define нихуя (нахуй тебе Кутэ? Тебе креактор предлагают, а не Кутэ)
Шрифт меня устраивает. Надеюсь, ты про ИДЕ говоришь, а не про Кутэ, который ьебе не предлагали.
Аноним 15/07/17 Суб 21:08:24  1025568
>>1025545
Да, ебло тупое, я именно что про культьКреэйтор говорю (ибо по иронии судьбы, что называется, в самом куте системное сглаживание шрифтов нормально работает). Если тебя устраивает шрифт - ты либо сидишь на мониторе 720x480, либо просто долбишься в глаза и ничего лучше не видел.
Аноним 15/07/17 Суб 22:47:56  1025616
Посоветуйте книгу по WinAPI. Начал читать Петзольда "Програмирование для Windows 95", но там ни один пример даже не компилируется на Visual Studio.
Аноним 16/07/17 Вск 00:33:03  1025689
15001521812360.jpg (28Кб, 424x363)
Снимок.JPG (33Кб, 613x445)
анон объясни пожалуйса почему не выходит из цикла?
только только вкатываюсь
Аноним 16/07/17 Вск 02:19:13  1025766
>>1025689
Ctrl+Z
Аноним 16/07/17 Вск 02:21:19  1025767
>>1025766
Бля, не. cin >> word скипает пробелы, поэтому word всегда заполнен.
Аноним 16/07/17 Вск 09:40:33  1025830
>>1025568
>я именно что про культьКреэйтор говорю
`нихуя’ undeclared (first use in this function)
> Если тебя устраивает шрифт - ты либо сидишь на мониторе 720x480, либо просто долбишься в глаза и ничего лучше не видел.
Вариант "мне насрать на шрифт" ты не рассматриваешь?
>>1025616
Это каким боком к плюсам относится? Иди в ньюфаг-тред или новый создай (про винду).
>>1025767
while(cin>>word, word!="\n")
например. Контролз тебе не поможет - оператор>> возвращает не буль и не значение ошибки.
http://en.cppreference.com/w/cpp/io/basic_istream/operator_gtgt
Аноним 16/07/17 Вск 09:48:01  1025831
>>1025830
>Контролз тебе не поможет - оператор>> возвращает не буль и не значение ошибки.
Да, он возвращает стрим. У которого есть оператор bool
http://en.cppreference.com/w/cpp/io/basic_ios/operator_bool
Аноним 16/07/17 Вск 09:56:01  1025832
>>1025831
Блин, забыл. Этот оператор проверяет fail(), но fail() не проверяет EOF-статус.
Аноним 16/07/17 Вск 10:00:18  1025833
>>1025832
>fail() не проверяет EOF-статус
Действительно.

Но если выставлен eofbit, то при следующей попытке чтения будет выставлен failbit. Так что while (cin >> ...) работает.
Аноним 16/07/17 Вск 10:08:52  1025835
>>1025830
>Вариант "мне насрать на шрифт" ты не рассматриваешь?
Когда ты днями работаешь с текстом — на него похуй быть ну никак не может, если он не пиздоглаз.
Аноним 16/07/17 Вск 10:09:57  1025837
>>1025835
>он
>долбоеб которому похуй на эти шрифты
>>1025830
>`нихуя’ undeclared (first use in this function)
>>1025482
>>Нихуя не умеющие культи
У тебя парсер говно.
Аноним 16/07/17 Вск 10:42:21  1025850
>>1025830
>Это каким боком к плюсам относится?
Почему консольный ввод/вывод относится к плюсам, а графический - нет?
Аноним 16/07/17 Вск 10:55:19  1025855
>>1025850
>Почему консольный ввод/вывод относится к плюсам, а графический - нет?
Консольный ввод/вывод есть в стандартной библиотеке, а окошек там нет
Аноним 16/07/17 Вск 11:00:39  1025859
>>1025855
Где обсуждают нестандартные библиотеки для плюсов? Явно же не в ньюфаг треде.
Аноним 16/07/17 Вск 11:12:02  1025865
>>1025833
Но тогда одна строка будет обработана дважды, разве нет? Что окажется в строке, если из потока ничего не считано?
>>1025837
>У тебя парсер говно.
`нихуя’ undeclared (third use in this ITT thread)
>>1025859
С твоим вопросом ("там ни один пример не компилируется") тебе вообще в MSDN, а не треды создавать. Учить одновременно WinAPI и даже C (хер с ними, с плюсами) тебе будет сложно.
WinAPI - это не библиотека для плюсов, это API ДЛЯ СИ.
Аноним 16/07/17 Вск 11:12:36  1025866
>>1025859
Нигде их не обсуждают.
Тем более винапи никто уже в помине не использует.
Аноним 16/07/17 Вск 11:29:43  1025875
>>1025865
C/C++ я уже выучил и писать консольные приложения мне не интересно.

>>1025866
>Нигде их не обсуждают.
Очень плохо, т.к. "голый" С++ практически бесполезен. А современное приложение на С++ - это графическое приложение.
Аноним 16/07/17 Вск 11:31:26  1025877
>>1025866
>Нигде их не обсуждают.
MSDN - это ДОКУМЕНТАЦИЯ, блет.
>>1025875
>C/C++ я уже выучил и писать консольные приложения мне не интересно.
В SDK есть огромная масса примеров для всего. Нахрен тебе примеры из книжки про Вин95?
Аноним 16/07/17 Вск 11:43:53  1025880
>>1025875
>современное приложение на С++ - это графическое приложение
Ну так учи Qt, нахуй тебе сишное винапи чтобы рисовать окошки?
Скажу больше, эпоха десктопных приложений прошла, сейчас все переносится в веб.
Аноним 16/07/17 Вск 12:08:09  1025897
>>1025865
>Но тогда одна строка будет обработана дважды, разве нет? Что окажется в строке, если из потока ничего не считано?
Я тут почитал и попробую подробно изложить.
Но сначала стоит заметить operator>> для string не читает пробельные символы. К которым, в частности, относится \n. Так что твой код точно работать не будет, если только ты не подставишь локаль, в которой \n не считается за пробельный символ.

Что касается failbit:
«The failbit
The failbit is set by the following standard library functions:
The basic_istream::sentry constructor, executed at the beginning of every input function, if either eofbit or badbit is already set on the stream, or if the end of stream is encountered while consuming leading whitespace.»
http://en.cppreference.com/w/cpp/io/ios_base/iostate#The_failbit
Так что если ты в новой строке нажимаешь Ctrl-Z и, насколько я помню, в Windows ещё надо нажать Enter, в отличие от *nix, где просто Ctrl-D достаточно, то при попытке прочитать из cin в string eofbit и failbit выставятся сразу, т.к. eof будет достигнут при попытке пропустить пробелы.

Что насчёт значения строки после облома: я так понял, она останется неизменной, т.к.
«2) Behaves as a FormattedInputFunction. After constructing and checking the sentry object, which may skip leading whitespace, first clears str with str.erase(), then reads characters from is and appends them to str as if by str.append(1, c), until one of the following conditions becomes true:»
http://en.cppreference.com/w/cpp/string/basic_string/operator_ltltgtgt
Я так понимаю, если checking the sentry object говорит, что всё плохо, то str.erase() не вызывается.
Аноним 16/07/17 Вск 14:03:29  1025967
>>1025897
> sentry object,
http://en.cppreference.com/w/cpp/io/basic_istream/sentry
Это не мьютекс (я так думал), это посложнее что-то, там и пропуск вайтспессов есть.
Аноним 16/07/17 Вск 14:22:02  1025981
>>1025875
>C/C++ я уже выучил
>современное приложение на С++ - это графическое приложение
Я так же думал в 13 лет, ничего, с возрастом пройдет
Аноним 16/07/17 Вск 16:03:45  1026042
>>1025981
Вот вы хейтите графические приложения, а ведь сами ими пользуетесь. Тот же браузер или компьютерная игра - это графическое приложение.
В одной консоли много не напрограммируешь.
Аноним 16/07/17 Вск 16:07:06  1026045
>>1026042
Гуй ты можешь хоть на жаваскрипте сделать (прости хоспиди).
Аноним 16/07/17 Вск 16:18:50  1026062
>>1026045
А кто эту жаваскриптину запустит? Кто будет отрисовывать для неё графику. Правильно, графическое приложение, в данном случае браузер.
Аноним 16/07/17 Вск 16:19:38  1026064
>>1026062
Охуительные истории. Что ещё расскажешь?
Аноним 16/07/17 Вск 16:49:01  1026088
>>1026064
Мы как-то с ребятами в универе хотели свою операционку написать. Я даже свой загрузчик написал на ассемблере и уложился в 512 байт.
Аноним 16/07/17 Вск 17:16:37  1026099
>>1026088
А я как-то голый залез в море и насрал!
Аноним 16/07/17 Вск 18:07:25  1026129
>>1026088
Я как-то лабу писал, решил выебнуться и написал на WinAPI за неделю, не зная ВинАПИ вообще.
Аноним 16/07/17 Вск 18:21:57  1026137
>>1026062
>А кто эту жаваскриптину запустит?
Движок V8 в хромиуме.
>Кто будет отрисовывать для неё графику
Видеокарта, очевидно
>Правильно, графическое приложение, в данном случае браузер.
А вот нихуя не правильно. JS Electron, там из браузера только движок, а ты, пидор грязный, иди нахуй со своими окнами, сейчас все нормальные пацаны пишут на таких языках как пеашпи и питоно, а вечером ебут твою ЕОТ, пока ты дрочишь плюсы, живя с мамкой и поедая ее борщи
Аноним 16/07/17 Вск 18:59:12  1026154
Есть один демон std::thread, который работает фоном, получает из очереди background_task и выполняет их. Как возвращать из демона результат выполнения тасков, если они могут быть разных типов?
Аноним 16/07/17 Вск 19:07:12  1026159
>>1026154
воид звёздочка и класс-энум для типа либо получать тип объекта динамически через typeid
std::variant
Аноним 16/07/17 Вск 19:11:40  1026161
>>1026159
А возвращать значения из треда каким образом?
Аноним 16/07/17 Вск 19:25:58  1026164
>>1026161
Вариант - это тимплейт, которому через аргументы нужно передать все возможные типы. Тип возвращаемого значения - инстанс этого тимплейта.
Или попердолиться с воид и typeid, и тогда будет void.
Аноним 16/07/17 Вск 19:27:35  1026165
>>1026161
http://en.cppreference.com/w/cpp/utility/variant
Аноним 16/07/17 Вск 19:28:25  1026166
>>1026164
Я имел в виду, что проблема не в типах. Вот я обработал в треде какой-то таск. Как вернуть и треда результат обработки? Дополнительно передавать в тред лямбду, которая захватывает по ссылке локальную переменную, и при помощи лямбды присваивать этой локальной переменной значение?
Аноним 16/07/17 Вск 19:48:38  1026171
>>1026166
Строго говоря, было бы очень неплохо иметь отдельный класс, который уничтожает тред, чтобы ты себе никогда в ногу не выстрелил, выйдя из вызывающего треда/функции и убив переменную для возврата. Это можно решить либо новым классом (деструктор которого будет всем этим заниматься), либо шаред_птром.
Аноним 16/07/17 Вск 22:02:30  1026240
>>1026166
Олсо, глянь в бусте, с бустом не знаком.
Как реализовать парсер xml файла и обновление базы MySQL на языке c++? Аноним 17/07/17 Пнд 00:51:14  1026305
Доброго времени суток, господа!

Дано:
- Есть интернет-магазин на CMS под названием CS-Cart.
- Располагается на сервере под управлением Debian.
- Скрипт, написанный на php, делает запрос по сети к файлу xml, который формируется по такому запросу. Файл xml обрабатывается и результаты обработки помещаются в создаваемый файл csv.
- Файл csv обрабатывается и передается в базу через специальные функции CS-Cart. Так происходит обновление базы товаров.

Внимание, четыре вопроса:

1. Можно ли сделать парсер на c++ и, минуя функции CS-Cart, взаимодействовать напрямую с базой MySQL?
2. Если можно (а это, наверняка, можно, потому что c++ велик и могуч), то нужно ли?
3. Если не нужно, то какие аргументы в пользу ненужности? (сложность c++ по сравнению с php в качестве аргумента не принимаются).
4. В какую сторону копать и есть ли какие-то решения?

Заранее спасибо за ответы. Всем добра!
Аноним 17/07/17 Пнд 09:42:53  1026349
>>1026305
>Как реализовать парсер xml файла и обновление базы MySQL на языке c++?
1) Берёшь любую xml-либу из пакетного менеджжера (можешь нагуглить сравнение производительности разных либ и подключить backports для получений новых версий на старый дебиан) и парсишь.
2) CSV - это формат таблицы с разделителями? Смотришь свой CSV-файл и выводишь так же (fstream).

Парсер вызываешь из PHP (так проще, чем с сетью на плюсах работать).

>то нужно ли?
Охуительный вопрос. Нужно для чего? Работает - не трожь.

>1. Можно ли сделать парсер на c++ и, минуя функции CS-Cart, взаимодействовать напрямую с базой MySQL?
Это плюсотред, а не кскарт-тред.
Аноним 17/07/17 Пнд 10:37:19  1026364
Как реализовывать 2d графику, имея координаты? на линуксе
Аноним 17/07/17 Пнд 11:17:47  1026376
>>1026364
Ньюфаг-тред к твоим услугам.
Аноним 17/07/17 Пнд 11:35:11  1026386
>>1026376
Но ведь ето крестовый тред! Тут больше специалистов
Аноним 17/07/17 Пнд 12:58:05  1026422
>>1026386
И нам не интересно отвечать на вопросы для ньюфагов.
Аноним 17/07/17 Пнд 13:36:06  1026443
>>1026386
2D графику можно реализовать хоть на пиздоне. Крестовый тред не про графику.
Аноним 17/07/17 Пнд 14:59:52  1026490
Хули все начали с сажей писать?
Аноним 17/07/17 Пнд 15:07:43  1026492
>>1026490
Чтобы никто не увидел, что тут долбоёбы про 2Д спрашивают. Бамплимит уже исчерпан, впрочем.
Аноним 17/07/17 Пнд 15:08:02  1026493
boost::lexical_cast - годно?
Аноним 17/07/17 Пнд 15:27:11  1026502
>>1026349
> Это плюсотред, а не кскарт-тред.

Не надо выебываться, дядя.
Я в курсе, что это плюсотред. Вопрос не в том, чтобы работать с CS-CART или заставить тебя с ней работать.
Вопрос в том, будет ли прирост производительности при работе с БД напрямую, минуя специальные функции движка CMS (неважно какого движка: WP, 1C, CSCAR, TYPO или "твоя мамка CMS")?
Аноним 17/07/17 Пнд 15:37:22  1026509
>>1026493
да
Аноним 17/07/17 Пнд 15:58:53  1026518
>>1026502
>Вопрос в том, будет ли прирост производительности при работе с БД напрямую, минуя специальные функции движка CMS (неважно какого движка: WP, 1C, CSCAR, TYPO или "твоя мамка CMS")?
Если ты хочешь пропустить формирование XML-файла (грамматическая структура) и херачить из SQL в CSV - конечно будет, безусловно (особенно в том случае, в котором XML тоже формируется интерпретируемой программой). Интерпретируемый язык - говно в плане производительности. Но каков порядок прироста в твоём случае - не чаю.

Всё решается балансом процессорной мощности и скоростью доступа к БД. Если у тебя нехватка производительности, и ЦП перенагружен, то нативный код ещё как поможет.
Аноним 17/07/17 Пнд 15:59:21  1026520
сага анрилейтид
Аноним 17/07/17 Пнд 17:30:48  1026557
>>1026518
Спасибо, добрый человек!
Аноним 18/07/17 Втр 13:58:11  1027823
Программачеры, нужен совет. Есть два стула. На первом стуле вакансия с 1С и зарплатой 40к, что для моего мухосранска и очень много, особенно учитывая, что опыта у меня нихуя. Стул второй - возможное (это не точно) место с С++. Что лучше выбрать?
Аноним 18/07/17 Втр 14:01:51  1027827
Какую автоматическую систему сборки лучше удобнее использовать для проекта на крестах,
Аноним 18/07/17 Втр 14:22:29  1027841
>>1027823
Зависит от того, насколько ты ненавидишь 1С и любишь плюсы.
Аноним 18/07/17 Втр 14:45:39  1027843
>>1027841
К 1С отношусь нейтрально и совершенно его не знаю. Плюсы нравятся я люблю сложности и мне нравится низкоуровневость плюсов, нравится реверсить программы (правда тут я нихуя не умею).
Я вот хуй знает, как быть
Аноним 18/07/17 Втр 16:25:21  1027880
Аноны, как передать динамический массив по ссылке в функцию потока?

int n = 5;
int foo = new int[n];
std::thread(func, ref(foo));

Подобное не работает.
Аноним 18/07/17 Втр 17:02:40  1027898
>>1027843
Ничто не мешает тебе заниматься плюсами в свободное время. Чем больше ты будешь писать на плюсах сам, без оглядки на требования работодателя, тем больше ты будешь уметь делать сам.
Выбирай бабки (про бабки ты не сказал - звучит так, как будто вакансия на плюсах чем-то хуже) и гарантию трудойстройства.
Аноним 18/07/17 Втр 17:03:38  1027900
>>1027880
Что такое ref()? Что именно не работает?
Аноним 18/07/17 Втр 17:38:08  1027924
>>1027823
С 1С ты всегда будешь куском говна на побегушках у жирных теток, с С++ твои возможности почти не ограничены. Гугл\Майкрософт\Амазон\Фейсбук - везде нужны крестобоги.
Аноним 18/07/17 Втр 17:38:59  1027925
>>1027880
thread thr([pointer] () { делай чо хочешь; });
Аноним 18/07/17 Втр 17:44:33  1027927
>>1027900
std::ref() проебался немного
Оборачивает объект для того чтобы передать его по ссылке в функцию потока.
Аноним 18/07/17 Втр 20:13:24  1027978
>>1027927
Ты нам зарплату не платил за то, чтобы мы из тебя информацию по кусочкам вытягивали.
Аноним 18/07/17 Втр 21:47:34  1028035
ПЕРЕКАТ
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
https://2ch.hk/pr/res/1028033.html
Аноним 18/07/17 Втр 22:49:50  1028082
>>1027924
Лучше уж работать с 1С и получать реальные деньги, чем мечтать о Майкрософт и в итоге пойти сисадмином в говноконтору.
Аноним 20/07/17 Чтв 10:34:05  1028694
>>1028082
Если ты потомственный лузер - да, лучше.
Аноним 20/07/17 Чтв 11:54:37  1028725
>>1025209
> The names ‘‘future’’ and ‘‘promise’’ are historical; please don’t blame or credit me. They are yet another fertile source of puns.
Bjarne Stroustrup
Аноним 20/07/17 Чтв 18:51:24  1028926
>>1027880
int* foo = new int[n]
Может причина в этом, но я раковый
Аноним 21/07/17 Птн 21:22:43  1029458
>>1028694
Аааа, ну да. Я забыл. Деньги не главное. Главное - стартап и мечты. Потом расскажешь об этом своей тянке, которая будет сосать болт у лузера из 1С. Ты же великий программист.

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 602 | 15 | 116
Назад Вверх Каталог Обновить

Топ тредов
Избранное