Программирование


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

Check this out!
<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
852 58 272

C++ тред #100 /cpp/ Аноним 21/11/19 Чтв 23:57:40 15263221
cpp100.png (973Кб, 1280x958)
1280x958
Аноним 22/11/19 Птн 00:01:42 15263292
Аноним 22/11/19 Птн 00:05:46 15263323
Аноним 22/11/19 Птн 00:07:07 15263334
>>1526332
Ну охуеть теперь, а мидлов в жизни не существует
Аноним 22/11/19 Птн 00:10:00 15263345
>>1526333
Мидлов не нанимали, конкретно крестовых.

Глобальный ответ на твой вопрос - вкатиться проще, чем, например, в тот же яндекс. Но обязательное требование английского на вообще все вакансии.
Аноним 22/11/19 Птн 00:35:13 15263466
>>1526334
>Но обязательное требование английского на вообще все вакансии.
Отвратительно.
И как этот английский получить? Вот я лопух, что-то по английски могу сказать но понятия не имею какому уровню это соответствует и как этот уровень подтверждать.
Аноним 22/11/19 Птн 00:37:27 15263487
>>1526346
> И как этот английский получить?
Вокруг миллоны школ\материала и прочей херни. Нужно только желание.

Мы на собесе просто несколько минут общаемся на английском, если требование разговорного есть. Никаких бумажек и сертификатов никогда никто не спрашивал.

Аноним 22/11/19 Птн 00:41:46 15263508
>>1526348
>Никаких бумажек и сертификатов никогда никто не спрашивал.
А, тогда нормально всё.
Хотя такое, разговорный у меня в десять раз хуже письменного, потому что я только пишу или читаю. Произношение очень слабо соотносится с написанием, и знание написаний и значений всех слов очень посредственно помогает их правильно произносить/воспринимать на слух.
Аноним 22/11/19 Птн 00:59:47 15263579
>>1526332
Кинь несколько примерных вопросов с собеседования.

ничегосе, в Москве есть офис нвидеа, я думал, что с началом кризиса иностранных контор стало меньше

мимо из Киева
Аноним 22/11/19 Птн 01:41:29 152636610
Ананасы, вопрос по смаке
Есть ли где-нибудь шаблоны этих файлов для проектов?
Я имею ввиду мне лень каждый раз записывать в него всякие флаги компилятора, для дебаг, для релиз версии и тп
Аноним 22/11/19 Птн 02:05:51 152636911
Аноним 22/11/19 Птн 02:14:29 152637112
>>1526322 (OP)
Вам еще и мерч нахаляву выдают? Во дела.
Аноним 22/11/19 Птн 02:19:21 152637313
А как относится nvidia-chan к кодерам без вышки?
Аноним 22/11/19 Птн 02:21:35 152637414
>>1526371
не на халяву, увы. Но мерч охуенный по качеству.

>>1526373
Всем похуй, спрашивают за скиллы
Аноним 22/11/19 Птн 02:27:40 152637615
>>1526374
То есть если я 25 годиков детина без опыта работы и вышки нормально пройду собес, то меня возьмут? Что прям реально никакой бюрократии, все открыто и прозрачно?
Аноним 22/11/19 Птн 02:32:01 152637716
>>1526376
Да. Но надо понимать, что на энтри-левельные позиции гигатонны желающих, и твое резюме будет максимально блекло смотрется на фоне всяких выпускников МГУ и прочих челиков, и тебя просто не позовут, т.к. нет времени собесить всех.

Т.е. если ты без вышки но с релевантным опытом - это одно, но если вообще пустое резюме - то смысл тебя звать на собес?
Аноним 22/11/19 Птн 03:00:41 152638017
Посоны, я придумал, как строки свич-кейсить. Короче, пишем хеш-функцию для строк constexpr, делаем
switch (strhash(s)) {
case strhash("suka"): ...; break;
case strhash("blyad"): ...; break;
case strhash("nahui"): ...; break;
}
Свич будет считаться в рантайме, а кейсы заготовятся еще при компиляции, и любую коллизию прекрасно поймают правила switch-case. Охуенно, да?
Аноним 22/11/19 Птн 03:05:35 152638118
>>1526380
Срочно звони трупу. То-то он охуеет!
Аноним 22/11/19 Птн 03:27:10 152638519
>>1526380
это сработает, но коллизии все равно проверять придется
Аноним 22/11/19 Птн 03:42:07 152638720
>>1526385
Само собой. С хорошей хеш-функцией скорее всего не будет, но если не повезло, то мне об этом расскажут, и я что-нибудь подменю, чтоб конкретно на мой набор легла удачная фаза луны. Было бы страшно, если бы компилятор при генерации таблицы прыжков несколько раз присваивал одному индексу разные метки в порядке повторения кейс-констант и не ругался, тихо оставляя таким образом последний из вариантов. UB нет, я об этом.
Аноним 22/11/19 Птн 03:56:11 152639021
>>1526332
Слушай, ну это дрочилово с C++ меня не интересует. Ты лучше скажи, есть ли у вас проекты на Java/Scala? Или вы все оверпрайснутыми видимокартами торгуете за 2 штуки баксов, у которых цепи питания гудят, ммм?!
Аноним 22/11/19 Птн 03:58:32 152639122
>>1526332
А, все понятно. Вы там на гоу с питоном пишете какую-то срань. Ладно, проехали, старина.
Аноним 22/11/19 Птн 07:58:12 152643123
>>1526380
> хеш-функцию для строк constexpr
Теперь найди нормальную криптографическую функцию, которую можно написать c constexpr.
Аноним 22/11/19 Птн 08:04:40 152643224
Повторю вопрос из прошлого треда
На практике выдали задание,на стартовой форме приложения должно быть динамическое(подтягивать из БД) штатное расписание предприятия.Как это сделать?Думаю использовать tree view,но никак не могу найти код для его наполнения из БД.
Проект пилю в Rad studio xe2
Аноним 22/11/19 Птн 08:54:07 152644225
>>1526432
Тебе нужен не программист с++, а программист использующий radstudio, чтобы ответить на этот вопрос.
Я только делфи ковырял в radstudio. Заполняется tree view по идее тривиальным образом так же как и остальные "компоненты" - тебе нужно просто найти код, который откроет и считает значения из твоей бд.
И из какой БД?
Это зависит от формата твоей бд, которое никак из твоего поста не следует - соответственно никто тебе не сможет ответить. Например, если там csv-файл, то это очень просто сделать.
Аноним 22/11/19 Птн 12:34:31 152662226
>>1526376
твое пустое резюме не дойдет до технического специалиста
ты будешь "отфильтрован" девочкой-hr

Аноним 22/11/19 Птн 13:00:29 152664227
Сап, есть строка string с числами: 1 2 3
Как суммировать все числа строки и вывести сумму на экран? Именно string, тупо менять тип данных на int нельзя
Аноним 22/11/19 Птн 13:07:20 152664728
>>1526642
stringstream шелкоме ту ю
Аноним 22/11/19 Птн 13:24:00 152666329
>>1526647
> stringstream
Вот откуда ты это узнал? Почему этого нет в книге страуструпа, нет на сайтах и в видеоуроках?!
Спасибо
Аноним 22/11/19 Птн 13:29:13 152666730
Аноним 22/11/19 Птн 13:48:58 152667931
Аноним 22/11/19 Птн 14:06:53 152668832
>>1526663
На стэковерфлоу когда-то подглядел, искал реализацию сплита строки по нужному символу(создаёшь со строки поток и делаешь getline).
Мало ли, почему об этом не пишут, я сам в книгах и курсах не встречал, может, тяжёлая вещь слишком
Аноним 22/11/19 Птн 14:16:48 152669733
>>1526688
>может, тяжёлая вещь слишком
Уж точно не тяжелее регулярки, которая сразу на ум приходит, если на коленке хуйню нужно сделать.
Аноним 22/11/19 Птн 14:30:31 152671434
>>1526663
У Страуструпа есть в его нубокнижке, у Липпмана тоже есть, он вообще люто топит за STL.

Это сугубо библиотечное средство, соответственно искать надо в книжках конкретно по STL, а не в книжках по языку в целом или по совершенно другим узкоспециальным вопросам.
Аноним 22/11/19 Птн 14:31:35 152671535
>>1526663
По аналогии с sscanf логично копать в сторону i/o library (cppreference)
Аноним 22/11/19 Птн 14:38:27 152672336
>>1526714
Спасибо, Липпмана гляну. А у Страуструпа читаю пикрил
>>1526688
Делал так:
stringstream ss;
while(getline(myfile, numbers))
cout << numbers;
ss << numbers;
int sum;
ss >> sum;
int result;
result += sum;
cout << result;
counter++; ?
Аноним 22/11/19 Птн 14:38:54 152672437
S91122-143315.jpg (278Кб, 720x1440)
720x1440
Аноним 22/11/19 Птн 14:44:13 152673038
e.png (282Кб, 775x673)
775x673
Аноним 22/11/19 Птн 14:46:27 152673539
>>1526730
Спасибо, я на главе "Ошибки", книги вроде надо с начала читать
Аноним 22/11/19 Птн 14:55:33 152674540
>>1526723
Ты усложняешь.
Сделай поток из строки и сразу считывай в инты в цикле и суммируй.
Аноним 22/11/19 Птн 15:09:59 152675541
Скиньте актуальный на 2019 roadmap по С++. Пришло время проверить свои знания.
Аноним 22/11/19 Птн 20:21:12 152705142
Посоветуйте литературу для новичка
Аноним 22/11/19 Птн 20:45:48 152708143
Аноним 22/11/19 Птн 21:48:43 152711744
стоит ли вкатываться в плюсы не зная чистый си?
Аноним 22/11/19 Птн 21:52:49 152712145
>>1527117
Если нравятся кресты - то стоит. Первое время можно пердолить чистый С++ (как делают на курсере в Яндексовском курсе), а потом уже опустишься ниже на УКАЗАТЕЛИ и прочее си
Аноним 22/11/19 Птн 21:59:13 152712646
>>1527121
Я просто сейчас изучаю Java Core, потому что там КАДИЛО КРУТИТСЯ, ЛАВЭХА МУТИТСЯ и прочий энтерпрайз. Всё понимаю, но чувствую, что это не то, что я хочу. Поэтому хочу попробовать C++, но вот подумал, что батю С++(т.е. чистый СИ) надо знать хорошо перед изучением его.
Аноним 22/11/19 Птн 22:07:50 152712947
>>1527126
не надо прям сразу, но в будущем придется
Аноним 22/11/19 Птн 22:17:02 152713148
>>1527126
Дизайн и эволюцию надо прочитать
Аноним 22/11/19 Птн 22:45:18 152714049
>>1527126
> чистый СИ) надо знать хорошо перед изучением его
В любой более-менее нехалтурной книге о плюсах все необходимое из си всегда излагается.

Если ты начнешь с чистого си, да еще так, чтобы >знать хорошо
рискуешь набраться вредных привычек или вообще до крестов никогда не добраться.
С другой стороны, если ты уже осилишь какой-то курс по плюсам, то изучение сишечки вообще не составит особого труда + будешь понимать зачем тебе вообще эта сишка нужна.
Аноним 22/11/19 Птн 23:07:17 152715650
>>1526322 (OP)
Сап, двач. Вопрос к самураям Qt. Есть один QStackedWidget, в который засунут QSpinBox (вообще то реализация QAbstractSpinBox, но думаю, это не важно в данном случае). При вызове QStackedWidget::setCurrentIndex() происходит вызов QSpinBox::on_spinBox_editingFinished(), который обрабатывает сигнал QSpinBox::editingFinished(). Как отвязать on_spinBox_editingFinished() от setCurrentIndex()? Можно, конечно, обложить blockSignals(), но это кажется не очень элегантным решением (при каждом вызове setCurrentIndex() создавать QSignalBlocker это такое). Я попробовал что-то типа disconnect(ui->spinBox, SIGNAL(editingFinished()), ui->stackedWidget, SLOT(setCurrentIndex(int))), но нихуя не произошло.
Ну и вообще, как сделать так, чтобы при вызове определенных методов не вызывались определенные обработчики?
Аноним 22/11/19 Птн 23:38:44 152717551
с кучей постоянных и одинаковых вопросов пора писать новую шапку, походу
Аноним 23/11/19 Суб 00:08:07 152719452
Аноним 23/11/19 Суб 00:26:07 152720553
>>1527156
>QSpinBox::on_spinBox_editingFinished()
Ошибочка, это слот не QSpinBox, а MainWindow. Попробую его и отсоединить от StackedWidget, мб получится.
Аноним 23/11/19 Суб 01:32:23 152723554
>>1527156
>>1527205
Хуйня какая-то, попробовал в новом проекте, там все нормально.
Аноним 23/11/19 Суб 06:35:18 152728455
>>1527081
Возьмем сферического идеального джуна в вакууме. Как он выглядит в 2019 году? Какими навыками должен обладать?
Аноним 23/11/19 Суб 07:00:28 152728756
>>1527284
>Какими навыками должен обладать?
Быть няшным
Аноним 23/11/19 Суб 09:38:08 152732457
Как в qt сделать, чтобы кнопка при наведении двигалась в противоположную от стрелки сторону? Как было например в веселой ферме.
Аноним 23/11/19 Суб 15:53:21 152764858
>>1527284
закончить бакалавриат по специальности связанной с программированием, быть мотивированным на то что закончит и магистратуру (совмещая с первой работой)
знать базовые структуры и алгоритмы; чтобы было хотя бы задач 300 сделано на любой из компитив платформ
эээ, все?
Аноним 23/11/19 Суб 16:15:15 152767359
>>1527648
>чтобы было хотя бы задач 300 сделано на любой из компитив платформ
300 хэллоувордов и lab4 тебе ничего не дадут, кроме ложной уверенности в том, что ты что-то знаешь и умеешь.
Аноним 23/11/19 Суб 16:47:50 152769960
>>1527648
Ахахахаха хуя ты мочишь
Аноним 23/11/19 Суб 18:29:31 152781661
>>1527673
>что ты что-то знаешь и умеешь
если под знать и уметь ты подразумеваешь еблю с конкретным стеком, то да 300 решений на литкоде этого не дадут.
Аноним 23/11/19 Суб 19:19:32 152785362
>>1527816
Под знать и уметь подразумеваю разрабатывать софт. Задачки не про разработку софта, а про спортивный интерес. В этом нет ничего плохого, но не надо обманывать себя, типа ты становишься лучше как профессионал от того, что решаешь задачки. Для того, чтобы научиться плавать в реке Янцзы, нужно плавать в реке Янцзы.
Аноним 23/11/19 Суб 19:27:47 152786463
>>1527853
>чтобы научиться плавать в реке Янцзы, нужно плавать в реке Янцзы
но научиться не тонуть можно и в бассейне
Аноним 23/11/19 Суб 19:53:33 152788264
>>1527864
И где доказательства, что задачки помогают не тонуть при разработке? А? А?
Аноним 23/11/19 Суб 20:19:40 152790265
Аноним 23/11/19 Суб 20:21:56 152790466
Пытаюсь кликнуть в открытое окно, не кликается. Для наглядности кликаю в пейнт. Что я делаю не так?
PostMessage(hWnd, WM_LBUTTONDOWN, MK_LBUTTON, MAKELPARAM(400, 256)). Функция возвращает 1, то есть ERROR_INVALID_FUNCTION
Аноним 23/11/19 Суб 20:39:14 152792367
>>1527904
нам нужен тред системного программирования отдельно походу. Это вообще не С++, но спросить да, более негде
Аноним 23/11/19 Суб 20:43:03 152792668
>>1527923
Я новичок в с++, но вообще да, куда еще нести свое говно насчет винапи.
видимо придется отказаться от затеи не двигать курсор визуально, send/post message походу ни у кого вменяемо не работает
Аноним 23/11/19 Суб 20:44:06 152792869
>>1526755
бамп годному воросу
Аноним 23/11/19 Суб 22:54:36 152803270
>>1527902
Говно мамонта, актуальность ~30%
Некоторые вопросы откровенно ёбнутые, некоторые чисто байтоёбские - я бы не пошёл в контору, где их спрашивают, некоторые просто устарели. Но кодер, который прошёл этот собес в 2007 сейчас либо ГОЛОВА, либо некрокодер
Аноним 23/11/19 Суб 23:02:34 152803671
>>1527902
Байтоебство я бы провалил, первые три вопроса осилил бы, потому-что интересовался, а -2 в двоичном хуй знает если бы дали 2 минуты покодить то сказал бы . По плюсам вопросы вполне адекватные и даже лёгкие. Математика для гейдева думаю вполне адекватное требование, а за ассемблер на джуна я хуй знает. В принципе статья так себе, уровня ищем гения за 10к. Надеюсь у них реально охуенные проекты, раз такие требования к новичкам, иначе я даже не знаю стоит ли оно того
Аноним 23/11/19 Суб 23:09:16 152804072
>>1528036
Сейчас долистал до комментов, автора статьи даже там обосрали с ног до головы оно и правильно, нанимать С++ джуна и не спрашивать практически нихуя по С++, зато ебать мозги байтоебством
Аноним 23/11/19 Суб 23:18:38 152804673
>>1527902
>N*log(N) в дереве, и почему оно так.
Лолват
>Почему float умножение быстрее чем целочисленное.
Лолват. <После просмотра таблиц Агнера> Блин, и правда. Это потому что там экспоненты складываются, и собственно умножать нужно намного меньше бит?

А так по всему кроме математики, думаю, процентов 90 бы ответил (знаю почти всё кроме устройства виртуальных функций и исключений. Я как-то года три назад запарывался по этому поводу, но у каждого тулчейна и платформы они свои, и поэтому забил). Математику ответил бы 50%.
Аноним 23/11/19 Суб 23:19:35 152804774
>>1528046
Внимательнее читай, это специально ошибочные вопросы, чтобы с толку сбить. Аля виртуальных конструкторов, только из другой области
Аноним 24/11/19 Вск 00:00:41 152807175
>>1528046
https://gcc.godbolt.org/z/qRJJk2
Я не уверен, что вообще корректно это проверил, было бы хорошо, если кто-нибудь адекватный отреагировал.
Аноним 24/11/19 Вск 00:01:35 152807276
>>1528036
> Надеюсь у них реально охуенные проекты
Если мне не изменяет память, то автор статьи из команды разработчиков mortal kombat. К моменту написания статьи они многие годы уже находились в глубокой жопе и гнали лютый треш.

>>1527902
Задроты ищут себе подобных, чтобы общаться на одном языке и, судя по всему, им это удается. А чужое горе - ну кого оно когда ебало?
Аноним 24/11/19 Вск 00:04:46 152807477
>>1528072
>то автор статьи из команды разработчиков mortal kombat. К моменту написания статьи они многие годы уже находились в глубокой жопе и гнали лютый треш.
Бля в голос
>арряяя джуны совсем обмельчали нихуя кадров нету
>ну и похуй что требуем как от мидлов
>ну и похуй что зарплаты низкие
>ну и похуй что из-за личной неприязни не берем
Аноним 24/11/19 Вск 00:10:27 152807578
>>1527902
Прошёл всё по плюсам и половину по математике, остальное выглядит как бесполезное доёбство. Неудивительно, что комментаторы его обоссали
Аноним 24/11/19 Вск 00:14:13 152807879
>>1528074
Справедливости ради, за треш несут ответственность дизайнеры и те, кто им платил.
Аноним 24/11/19 Вск 00:23:01 152808580
>>1528046
>Блин, и правда
А, не, я жопой прочитал таблицу.
MUL: Latency 3 Throughput 2
FMUL (котоаря на x87): Latency 4 throughput 1
Аноним 24/11/19 Вск 00:35:23 152809781
>>1528074
Ну это уже ресентимент какой-то, ребят: если я не могу, то они не только пидоры и говноделы, но ещё и найти никого не могут.
Чувак, если что, не МК делал, а работал (может быть, и работает, но лень смотреть) в Naughty Dog / ICE Team - можете погуглить, кто это такие, но на всякий случай выражу мнение, что в контексте вторых такие заёбы с требованиями вполне себе оправданные, хотя, конечно, и иррациональные именно в контексте собеседования.
Аноним 24/11/19 Вск 00:40:37 152810282
>>1528097
Джун в Ноти Дог это как сеньор в среднем по рынку, просто далеко не факт, что тот чувак собеседовал в контору настолько высокого уровня, а не в дженерик галеру. В первом случае такие завышенные требования более чем оправданы, во втором -- нет.
Аноним 24/11/19 Вск 00:45:34 152810483
Аноним 24/11/19 Вск 00:46:12 152810584
Аноним 24/11/19 Вск 00:50:23 152810685
>>1528105
С этим не спорю, но это было уже не на момент написания статьи.
Вообще же, если честно, я защищаю такие требования просто из-за того, что сам предпочту дрочить железо и предметную область, а не всякие модные нововведения плюсовых стандартов, на которые принято класть в геймдеве (по очевидным причинам, кстати).
Аноним 24/11/19 Вск 01:10:00 152811186
>>1528106
Потому что главный разраб когда-то в 96м году наткнулся на баг кодогенерации в Borland C++ Compiler при использовании неизвестно откуда скачанного STL и решил, что оно зло?
Аноним 24/11/19 Вск 01:14:47 152811587
>>1528111
STL не зло, но его банально не везде можно использовать - если ты не догадываешься, почему, то бог тебе судья, конечно.
Также стоит учитывать, что не на всех целевых платформах всегда есть самые свежайшие компиляторы - сейчас ситуация исправляется, но об окончательной победе говорить рано.
Аноним 24/11/19 Вск 01:20:52 152811988
>>1527673
>>1527699
а что не так?
в альтернативной вселенной где я бы не забил на кодинг и на работу вообще и сейчас сидел бы тимлидом в какой-нибудь конторе, то если бы пришел джун с образованием по специальности (и при этом не проебывал все пары подряд), и который до этого задрочил задачек 250-300 на каком-нибудь литкоде или хаскерранке, то почему бы и не взять?

Аноним 24/11/19 Вск 01:38:03 152812889
>>1526357
Пиздуй на хохляцкие имиджборды, какло.
Аноним 24/11/19 Вск 01:50:15 152813190
>>1526357
> Кинь несколько примерных вопросов с собеседования.
Есть два компилятора. За какой сам сядешь, а за какой Страуструпа посадишь?
Аноним 24/11/19 Вск 02:01:48 152813591
>>1528119
300 задачек -- это странный критерий, он показывает умение решать простые отвлеченные задачи, а не умение решать сложные (читай -- комплексные) прикладные задачи. Это та же самая ситуация, что и с тестами айкью. Тесты айкью могут отсеивать совсем полных дегенератов от людей, обладающих минимальным интеллектом, но это невероятно хуевый способ искать даже не то, что гениальных, а хотя бы талантливых людей. Я бы не стал делать такой критерий необходимым, скорее просто как плюсик в карму.
Аноним 24/11/19 Вск 02:10:10 152814092
>>1528135
Задачи разные бывают. На leetcode хорошие задачи и 300 задач оттуда будет куда полезнее и для интервью или для чего либо еще.
Аноним 24/11/19 Вск 02:47:10 152815593
>>1528131
>За какой сам сядешь
borland c++ 4.53
>за какой Страуструпа посадишь
EDG (edison design group)

Аноним 24/11/19 Вск 03:29:53 152816994
Посоветуйте потокобезопасную однофайловую (не слишком крупную - чтобы не приходилось дополнительно изучать особенности именно этой либы, ебанутые местные типы/структуры или ещё что-то) либу для линейной алгебры. Обратные матрицы, решение систем уравнений, проверки на нормальность и вот всё это.
Желательно, чтобы с си-массивами из float/double работала, без всяких std::array. Комплексные числа не нужны - нужны только если сразу с кватернионами, но в последнюю очередь.
Аноним 24/11/19 Вск 03:32:37 152817095
>>1528119

> закончить бакалавриат по специальности связанной с программированием, быть мотивированным на то что закончит и магистратуру (совмещая с первой работой)
Ненужное дрочево, пережиток совка
Аноним 24/11/19 Вск 03:32:43 152817196
>>1528169
Стандартная библиотека :^)
Аноним 24/11/19 Вск 03:33:13 152817297
>>1528170
Только в России для либерах это пережиток совка.
Аноним 24/11/19 Вск 03:41:35 152817798
>>1528171
Почему-то не могу найти в каком месте стандартная библиотека позволяет вычислить хотя бы обратную матрицу.
Аноним 24/11/19 Вск 03:43:04 152817899
Аноним 24/11/19 Вск 04:40:48 1528192100
>>1528178
Благодарю, прям очень спасибо.
Потестил, отличная штука на первый взгляд и запустилась сразу же, никаких lib-файлов, просто хедер добавил. По идее ихний Map не должен делать никаких реальных действий при использовании си-массивов определённой размерности - по крайне мере указатели в его структурах те же самые. Ещё и быстродействием хвалятся на своём сайте - круто, если оно так.
Аноним 24/11/19 Вск 13:50:08 1528331101
>>1528178
>не слишком крупную - чтобы не приходилось дополнительно изучать особенности именно этой либы, ебанутые местные типы/структуры или ещё что-то
Просмотри эту страницу, на всякий случай.
http://eigen.tuxfamily.org/dox/TopicPitfalls.html
Аноним 24/11/19 Вск 13:50:33 1528333102
Аноним 24/11/19 Вск 15:39:57 1528419103
Мне нужен конструткор и деструктор в статическом классе?
Например
static class abc
{
abc(); ?
~abc(); ?
}
Аноним 24/11/19 Вск 15:48:52 1528430104
>>1528419
Статических классов нет в C++. Что ты сделать хочешь?
Аноним 24/11/19 Вск 16:09:25 1528445105
>>1528419
Помоему ты пытаешься синглтон накостылить с джавы или с шарпа к нам пожаловал?
Аноним 24/11/19 Вск 16:17:27 1528463106
>>1528430
Вообще-то есть. Класс, в котором всё статическое. Даже небо и Аллах.
Аноним 24/11/19 Вск 16:18:04 1528464107
>>1528419
Не нужны. Можешь даже сделать их delete.
Аноним 24/11/19 Вск 16:18:28 1528465108
>>1528445
Нет, всегда писал на плюсах
Аноним 24/11/19 Вск 16:38:34 1528488109
>>1528463
Откуда вы лезете только.
> a storage class can only be specified for objects and functions
Нет, ну ты можешь сделать класс только со статическими членами, но его всё ещё можно инстанцировать.
Аноним 24/11/19 Вск 16:46:55 1528496110
>>1528488
Так удали конструктор. А вообще в С++ не нужны статик классы, потому что есть пространства имен.

мимо
Аноним 24/11/19 Вск 17:13:01 1528510111
>>1528465
Тогда странно что ты применил static к классу. Такое в сишке к структуре может еще прокатить, но эффекта никакого не даст
Аноним 24/11/19 Вск 17:13:06 1528511112
>>1528496
Тогда это будет класс со статическими членами и удалённым конструктором, только и всего - речь же о самом понятии статического класса, которого нет в языке.
Аноним 24/11/19 Вск 17:41:47 1528560113
>>1528511
Это будет считаться статическим классом, неявно. Аналогично с интерфейсами и еще много чем.
Аноним 24/11/19 Вск 17:44:54 1528565114
>>1528511
У меня от тебя социальный конструкт. Интерфейсов тоже нет в языке, но ими всё равно пользуются.

>>1528488
> ну ты можешь сделать класс только со статическими членами, но его всё ещё можно инстанцировать.
Я написал про delete в следующем посте.

>>1528496
У пространств имён нет модификаторов доступа. Если не нужно ничего скрывать, то я соглашусь.
Аноним 24/11/19 Вск 17:55:23 1528577115
>>1528510
Я никогда не применял раньше, но редактор студии не ругался, я и подумал, что можно
Аноним 24/11/19 Вск 18:06:38 1528593116
>>1528577
Так ты варнинги смотри, а не ошибки.
И у тебя будет сообщение, что ключевое слово static опущено, т.к. не объявлена переменная.
Аноним 24/11/19 Вск 18:58:10 1528645117
>>1528565
> У пространств имён нет модификаторов доступа. Если не нужно ничего скрывать, то я соглашусь.
Тут, блядь, и спалились умники. "Статические классы" у них бывают, а неймспейсы ничего не скрывают (особенно безымянные, которые и используют, чтобы сохранить объявление в рамках единицы трансляции). Пиздец.
Аноним 24/11/19 Вск 19:01:25 1528650118
>>1528565
тебе никто не мешает заэкспозить в неймспейсе только "публичную" херню, а в .cpp сделать кучу хелперов и прочего, чего тебе нужно, включая "статические" переменные.
Аноним 24/11/19 Вск 19:01:28 1528651119
>>1528577
Ты так и не сказал, что сделать хочешь.
Если тебе нужна та "статичность", что к функциям применяется, то только анонимные неймспейсы. Выбора нет.
Аноним 24/11/19 Вск 19:07:37 1528657120
>>1528565
> Интерфейсов тоже нет в языке, но ими всё равно пользуются.
Не путай тёплое с мягким - статических классов в плюсах нет хотя бы из-за того, что они тут вообще не нужны, в отличие от всяких джав и сишарпов, где для объявления любой сущности нужен класс.
Аноним 24/11/19 Вск 20:17:13 1528733121
>>1528645
>безымянные
Это другое, не маняврируй.

>>1528650
Ну тогда и модификаторы доступа в классах (любых) не нужны, если настолько изъёбываться.
Аноним 24/11/19 Вск 20:19:48 1528736122
>>1528733
> не маняврируй.
А по существу что-то сказать? Так можно все аргументы отметать, потому что "это другое".
Аноним 24/11/19 Вск 20:20:22 1528737123
Чем отличается Matryx[N*M] от Matryx[N][M], если обе матрицы динамические?
Аноним 24/11/19 Вск 20:28:48 1528742124
>>1528736
Перенося что-то в анонимный, ты отрываешь ребёнка от груди, разрываешь связи, сдаёшь в детский дом. В то время как нужен родительский контроль.
Аноним 24/11/19 Вск 20:45:48 1528750125
>>1528650
> тебе никто не мешает заэкспозить в неймспейсе только "публичную" херню, а в .cpp сделать кучу хелперов и прочего, чего тебе нужно, включая "статические" переменные.
@
> Ну тогда и модификаторы доступа в классах (любых) не нужны, если настолько изъёбываться.
Хотя нет, здесь я был не прав. Если класс не статический, то нужны отдельные экземпляры закрытых переменных, и тогда помогут ьолько модифткаторы.
Аноним 24/11/19 Вск 20:51:18 1528754126
>>1528733
>Ну тогда и модификаторы доступа в классах (любых) не нужны, если настолько изъёбываться.
тут уже наследование ломается
Аноним 24/11/19 Вск 21:04:05 1528758127
>>1528754
Да и похуй у нас не ОПП-помойка, а нормальный язык.
Аноним 24/11/19 Вск 21:06:12 1528760128
>>1528758
> нормальный язык
А причем здесь раст?
Аноним 24/11/19 Вск 21:17:54 1528766129
>>1528760
никто не знает причем здесь раст.
Аноним 24/11/19 Вск 21:40:09 1528781130
Ананасы, есть где-нибудь простенький шаблон резюме?
Я вообще нихуя не понимаю что туда вписать нужно и стоит, а о чём лучше не говорить
Подавать себя не могу, а вот поговорить на счёт кода - пожалуйста
Аноним 24/11/19 Вск 21:43:04 1528785131
>>1528781
Резюме надо писать под вакансию
Аноним 24/11/19 Вск 21:47:02 1528788132
>>1528781
пиши то, с чем работал и что сделал.

А-ля
2002-2004, ЗАЛУПА энтерпрайз
Стэк: C++, C#, C++\CLI, C, MySQL
Написал новую базу данных, нахуй выкинул старую.
Ускорил поиск на 0.02%
Аноним 24/11/19 Вск 21:54:42 1528799133
Всем привет. Я пишу Big Integer. Хочу сделать оптимизацию для маленьких чисел. Когда не будет помещаться, буду переделывать в вектор. Как это красивее сделать? Я пока думаю, что можно через std::variant. Супер оптимально по памяти/времени работы не обязательно.
Аноним 24/11/19 Вск 21:56:20 1528801134
>>1528788
> Ускорил поиск на 0.02%
Вся суть байтойобушков
Аноним 24/11/19 Вск 22:01:17 1528806135
>>1528737
В первом случае у тебя занято подряд N*M памяти, а во втором - N расположенных отдельно участков размера M.
Может оказаться, что и во втором случае все лежит подряд, но я бы на это не надеялся.
Аноним 24/11/19 Вск 22:01:25 1528807136
Можно пример для Qt, где тяжёлые вычисления выносят из гуевого потока? Посмотреть, как это обычно делают. Просто и без задней мысли создают поток, в конце выполнения которого сигналят о завершении?
Аноним 24/11/19 Вск 22:06:35 1528814137
15739385395130.jpg (106Кб, 753x565)
753x565
Аноним 24/11/19 Вск 22:07:12 1528815138
>>1528785
Это то понятно, но мне нужны тонкости.
Одними технически данными сыт не будешь, наверное.
Аноним 24/11/19 Вск 22:08:53 1528816139
>>1528801
> > Ускорил поиск на 0.02%
> Вся суть байтойобушков

Это всё для того чтобы твой пронхаб грузился быстрее
Аноним 24/11/19 Вск 22:09:44 1528818140
Аноним 24/11/19 Вск 22:16:21 1528823141
>>1528815
Ты, блять, программист. Нехуй тебе в резюме указать кроме стека, опыта (как показал этот анон >>1528788 ), примеров кода. Всё равно проход эйчара зависит от звёзд на небе, а дальше собеседование, до которого твоего резюме из программистов никто и не откроет.
Аноним 24/11/19 Вск 22:18:17 1528824142
Где можно быстро до НГ денег заработать?
Аноним 24/11/19 Вск 22:20:56 1528826143
Аноним 24/11/19 Вск 22:21:39 1528828144
Аноним 24/11/19 Вск 22:24:36 1528829145
15736552775940.png (6Кб, 219x230)
219x230
>>1528828
Ну так визу в европку и не из украшки можно получить за несколько дней.
Аноним 24/11/19 Вск 22:42:00 1528837146
>>1528829
от еуропы меня тошнит, так что не выход.
Аноним 24/11/19 Вск 22:51:11 1528840147
>>1528814
Чем это может быть лучше std::async?
Аноним 24/11/19 Вск 22:52:39 1528842148
>>1528837
Прочитай С++ за 21 день и иди сеньором в гугл
Аноним 24/11/19 Вск 23:38:45 1528873149
Двач, помоги. Как вкатиться в графоний для геймдева?
Аноним 24/11/19 Вск 23:47:55 1528889150
15666430256130.jpg (66Кб, 764x938)
764x938
>>1528873
Завтра идёшь в годот тред геймдевача. Похуй если ничего не поймешь.
Аноним 24/11/19 Вск 23:51:43 1528894151
>>1528801
Тащемта в масштабах того же pornhub это может привести к нихуёвой экономии электричества
Аноним 24/11/19 Вск 23:52:36 1528895152
>>1528799
Возьми готовое, или подожди c++23, там будет искаропки
Аноним 25/11/19 Пнд 00:01:30 1528903153
>>1528873
в геймдеве нужно шлепать на готовых движках\фреймворках. Графические программисты нынче очень большая редкость, а как вкатиться в джуна - видел вакансии только от Unigine в Томске (с Томской зарплатой в 3 роллтона)
Аноним 25/11/19 Пнд 02:01:17 1528948154
13333701134499.jpg (36Кб, 317x372)
317x372
>>1528799
Успешное выполнение этого задания дает вам право на еще одну проверку любого дз.
Братан, нафига? Тебе жалко +24 байта с вектора?
Аноним 25/11/19 Пнд 02:09:30 1528949155
Что почитать по visual c++? Конкретно visual studio, я только консольные делал приложения, а тут глаза разбегаются.
Аноним 25/11/19 Пнд 05:25:43 1528969156
Аноним 25/11/19 Пнд 07:17:00 1528984157
>>1528903
>в геймдеве нужно шлепать на готовых движках\фреймворках
Это не означает, что ты избежишь контакта с графическим стеком, рендер инженер должен знать всё то же что и при написании с нуля.
Аноним 25/11/19 Пнд 11:59:49 1529052158
Какой самый сложный проект вы писали на плюсах?
Аноним 25/11/19 Пнд 13:19:14 1529101159
>>1529052
Чит для онлайн-дрочильни, по фану. На работе в основном хуйню одну дрочу.
Аноним 25/11/19 Пнд 16:10:14 1529247160
>>1529101
> хуйню

А ты умеешь заинтриговать. Будь ласка поведай поподробнее, чем именно надо заниматься
Аноним 25/11/19 Пнд 16:14:33 1529254161
Аноним 25/11/19 Пнд 16:25:15 1529271162
>>1529254
А для тупых, но более сложные вещи чем хелоуворлд? Мне надо интерфейс к бд сделать.
Аноним 25/11/19 Пнд 16:36:47 1529285163
Аноним 25/11/19 Пнд 16:52:03 1529299164
>>1529271
> Мне надо интерфейс к бд сделать.
qt
Аноним 25/11/19 Пнд 16:59:15 1529308165
>>1528651
Я вообщем сделал все методы и поля статическими, кроме конструктора и деструктора, их я удалил.
Аноним 25/11/19 Пнд 17:02:57 1529314166
>>1529285
Ну у меня такая ide.
>>1529299
Там вроде все по-другому.
Аноним 25/11/19 Пнд 18:30:55 1529387167
>>1526322 (OP)
Насколько сложно перенести проект в 2.5к строк на С++/Qt виджеты на винформы, без знания последних. Сильно там различаются подходы, сам осилю срок - неделя или лучше найти кого-то?
Аноним 25/11/19 Пнд 19:03:30 1529449168
>>1529387
>срок - неделя
ya bi zalojil nedeli tri
Аноним 25/11/19 Пнд 19:31:13 1529471169
>>1529387
Зависит от того, что из кюта используется. Там же куча и не интерфейсного есть.
Аноним 25/11/19 Пнд 19:40:19 1529487170
>>1529471
По большей части отрисовка с помощью QGraphicsItem и QGraphicsScene, вроде бы в шарпе тоже на наследовании от абстрактного контрола суть, но смущает что еще используется достаточно немало слотов-сигналов, хуй знает как их заменять.
Аноним 25/11/19 Пнд 19:55:51 1529494171
Как скрыть верное значение в программе. У меня делается проверка и если это число равно данному, то идем дальше. Вот мне нужно что бы не было просто if a==b. Что бы нельзя узнать число смотря на исходник. Значение должно находиться однозначно. Это более маиематический вопрос, но я его тут тожа задам
Аноним 25/11/19 Пнд 20:02:07 1529499172
>>1529494
Вычислять его, или грузить откуда то извне.
Аноним 25/11/19 Пнд 20:02:29 1529500173
>>1529494
Зашифруй
хоть по маске, хоть криптографически
Аноним 25/11/19 Пнд 20:04:37 1529502174
>>1529499
>>1529500
Я понимаю что нужно какие то мат операции применить к нему. Но какие?
Аноним 25/11/19 Пнд 20:36:44 1529524175
Что можно ультимативного для дебилов почитать по всяким операторам копирования/перемещения, смарт поинтерам и прочим фичам, чтобы, например, я мог раз и навсегда понять как грамотно оформлять конструктор копирования для класса, у которого есть юник_птр на другой класс?
Аноним 25/11/19 Пнд 20:47:50 1529529176
>>1529524
у майерса было про Rule of 5
Аноним 25/11/19 Пнд 20:50:23 1529530177
>>1528948
Так-то довольно много целых чисел влезает в 24 байта.
Аноним 25/11/19 Пнд 21:24:14 1529554178
>>1529502
Это уж как тебе захочется. Если похуй на взлом, можешь хоть связку умножить на два + поделить на два. Если ты хочешь проверку серийника запилить - плоти умным людям либо выдумывай свой способ шифрования.
Аноним 25/11/19 Пнд 21:25:36 1529555179
>>1528799
> Супер оптимально по памяти/времени работы не обязательно.
>>1529530
> Так-то довольно много целых чисел влезает в 24 байта.
Нет, ну ты нормальный?
Аноним 25/11/19 Пнд 22:17:46 1529596180
>>1529247
Достать хуйню и дрочить её, очевидно же.
Аноним 25/11/19 Пнд 23:32:06 1529648181
>>1529524
> конструктор копирования для класса, у которого есть юник_птр на другой класс
Он разве будет существовать?
Аноним 25/11/19 Пнд 23:43:52 1529653182
>>1528948
Ну так-то если юзать std::variant, то там тоже оверхед будет, так что по памяти мб я и не выиграю, но прек в SSO/small vector из буста/такой вот хуйни в том, что ты не делаешь лишних аллокаций имплаинг не засоряешь хип. К тому же это полезно, если ты не хочешь думать над тем, как парсить строку (если есть такая оптимизация, то менее болезненно будет просто читать диджиты и делать a += d; a *= 10;). А вот сделать перегрузку для арифметических операций от инта нельзя, так как в таске требуется неявный конструктор от инта, и это будет компайл тайм эрор.
Аноним 26/11/19 Втр 00:45:20 1529677183
>>1529524
>конструктор копирования для класса, у которого есть юник_птр на другой класс?
Тут надо делать deep copy, ни у какого Майерса такое не расписано, самому делать надо.
Аноним 26/11/19 Втр 01:38:42 1529688184
>>1529314
>Там вроде все по-другому.
Не выебывайся, качай Qt Creator и делай свой интерфейс к бд. Qt Creator попроще и можно сразу все на формочки мышкой хуярить. Делая интерфейс в вижуалке на C++ ты обрекаешь себя на боль и страдания.
Аноним 26/11/19 Втр 11:07:45 1529827185
>>1529688
Двачую, потом при сборке просто добавить папку с драйверами, которые сами генерятся, и всё. Никакой ебли с либами, переносимостью и подобного.
Аноним 26/11/19 Втр 11:10:14 1529828186
поясните за noexcept
Аноним 26/11/19 Втр 11:59:52 1529875187
>>1529688
>>1529827
Да это "лаба1", а не какой-то серьезный проект. Просто надо освоить вижуал плюсы.
Аноним 26/11/19 Втр 14:02:56 1529959188
>>1529677
Я в целом прошу какую-то книгу, в которой отдельно по частям будет хорошо расписано, чтобы потом было понятно какие правила накладываются при реализации сложных вещей.
Прочитал Тур по С++ Страуструпа, там вроде все и обо всем написано, но как-то довольно общо. Хочется чего-то пообстоятельнее.
Аноним 26/11/19 Втр 15:37:57 1530040189
>>1529875
Ну страдай тогда, что еще посоветовать. Мог бы и лабу сделать и кути начинать осваивать, потом пригодятся, а так будешь говно мамонта палкой ковырять, о котором после сдачи лабы забыть можно будет.
Аноним 26/11/19 Втр 17:44:05 1530150190
>>1529959
>Хочется чего-то пообстоятельнее.
Начни с практики. Накодь свою дженерик коллекцию. Двусвязный список, например, или хэш-таблицу. Со всей лабудой, рул оф файв, итераторами и т.д. Большинство вопросов отпадут в процессе работы.
Аноним 26/11/19 Втр 20:37:24 1530243191
>>1529502
Хеш-функция. Заранее узнать хеш своего значения, захардкодить его, а затем брать хеш вводимого значения и сравнивать с захардкоденным.
Аноним 26/11/19 Втр 20:47:16 1530253192
Где Visual C++ для линуха?
Аноним 26/11/19 Втр 21:00:44 1530265193
>>1530253
Проиграл почему-то. Clion качай, нюфань.
Аноним 26/11/19 Втр 21:03:48 1530271194
>>1528948
Ебать ты обосрался чмоня откуда +24 байта с std::variant?
Аноним 26/11/19 Втр 21:04:19 1530273195
>>1529494
Кури алгоритмы, но это не поможет все равно. Без специализированных тулз, типа Vmprotect, скрыть ничего не выйдет. Если хочешь что-то спрятать, прячь это на своем сервере, а не в приложении.
Аноним 26/11/19 Втр 21:14:41 1530285196
>>1529524
Вопрос дибила, в случае если тебе нужно копирование, логичнее сделать шаред, а не юник. Вообще если делать действительно хорошо можешь посмотреть сурс clickhouse. Там указатель на столбцы хорошо сделаны, совмещает идеи интрузив и юник для хорошего cow
Аноним 26/11/19 Втр 21:42:34 1530304197
>>1530271
Не с варианта а с вектора, ебан ты слепошарый.
Аноним 26/11/19 Втр 21:57:52 1530322198
Аноним 26/11/19 Втр 22:00:27 1530326199
>>1530040
А в чем страдания, там вроде через ado.net просто должно быть подключить бд, не? Я книжку скачал Пахомова по vs C++.
Аноним 26/11/19 Втр 22:40:35 1530344200
>>1530326
а книжку Епифанова не скачал случаем?
Аноним 26/11/19 Втр 22:57:19 1530356201
6991157-boris-p[...].jpg (20Кб, 330x466)
330x466
>>1530344
Лол, нет. Я просто подумал, может кто-то читал тут.
Аноним 26/11/19 Втр 23:14:04 1530368202
>>1530356
это скорее всего адовый мусор, который учит ВИЖУАЛ СТУДИИ, а не С++. При всей моей любви в студии - это только IDE, а не ебучий диалект, который раньше педалила микрософт
Аноним 26/11/19 Втр 23:25:05 1530375203
>>1530344
>а книжку Епифанова не скачал случаем?
Это который из "Зеленого слоника".
Аноним 26/11/19 Втр 23:57:01 1530385204
>>1530304
Сука ты реально тупой, смотри человек хочет написать variant<int, vector>, что по памяти будет 24 + 1 + выравнивание. Ты как полный дегенерат пишешь
> Тебе жалко +24 байта с вектора?
Пиздец как можно быть таким аутистом
Аноним 27/11/19 Срд 00:14:07 1530395205
Аноним 27/11/19 Срд 00:16:40 1530398206
>>1528984
Ну никто знать ничего не запрещает, но это вот "должен" весьма сомнительно.
Аноним 27/11/19 Срд 07:01:50 1530468207
>>1530398
Угу, так и вижу, как вася привинчивает кастомную систему анимации для залупанейм, не зная как кватернионы крутить. А саня пытается профилить рендер, не зная что такое дроуколл. Антошке поручили побороть ореолы оклужена при имеющейся геометрии, а он смотрит в шейдер и видит бибу. Бригада джамшутов, блять. Все юзают готовые движки, они экономят гору работы, но ни один не изолирует от кишков, всегда всё задрачивается под специфику игры, хоть на УЁ4, хоть на ебучем юнити. Это и есть работа геймдев макаки, поэтому она обязана знать базовые вещи, а рендер-инженегр и подавно. И плюс к тому специфику используемого двигла.
Аноним 27/11/19 Срд 08:57:43 1530491208
Сап кодеры. Я базово освоил С++ по SoloLearn, там функции, циклы, указатели, классы, шаблоны. Писал простой код по заданиям, которые есть в приложении, типа написать программу, которая разбивает любое введённое чётное число на 2 простых (проблема Голдбаха), или определяет кубический корень числа без вызова стандартной функции. Есть какие-нибудь хорошие обучающие ресурсы, чтобы двигаться дальше этого уровня, с заданиями, которые будут более приближены к тем, которые реально существуют в профессиональном применении языка?
Аноним 27/11/19 Срд 09:12:22 1530498209
g.jpg (921Кб, 3456x1944)
3456x1944
>>1530491
да вот, выбирай любое.
правда хуй знает почему эти неосиляторы проблему ламберта в фак ю записали, там всё просто, если матан не прогуливать
Аноним 27/11/19 Срд 09:40:07 1530510210
>>1530498
В ди пи ти одни mathlet-ы просто
Аноним 27/11/19 Срд 10:30:52 1530530211
>>1530498
Ну я имел в виду скорее не просто задания, а обучающий ресурс, который даёт информацию, как что-то делается, и задание на отработку (так я в душе не ебу как можно сделать тот же Download manager)
Аноним 27/11/19 Срд 11:13:09 1530546212
>>1530530
Наверни курсы от pvs-studio
Аноним 27/11/19 Срд 12:04:32 1530567213
Аноним 27/11/19 Срд 12:17:43 1530578214
>>1528331
Да и так всё выровнено.
А нормально что теперь моя программа компилируется по 90 секунд вместо 3? Это невыносимо. Мне нужно число с 2 на 2.5 переставить, а оно пересобирается минуту с лишним.
Аноним 27/11/19 Срд 12:25:04 1530579215
Не могу нагуглить решение.
SetConsoleTextAttribute(hConsoleHandle, FOREGROUND_GREEN);
Сюда можно добавить параметр яркости?
Аноним 27/11/19 Срд 12:42:49 1530584216
Не могу найти книжку SFML Game Development. Может быть есть у кого?
Аноним 27/11/19 Срд 13:01:36 1530589217
Аноним 27/11/19 Срд 15:29:59 1530776218
Начал изучать qt и что то меня сильно смущают местные макросы. Словно и не кресты вовсе
Аноним 27/11/19 Срд 15:33:17 1530779219
>>1530776
Это ты еще до qml не дошел, там ваще жабаскрипт.
Аноним 27/11/19 Срд 16:14:20 1530803220
Аноним 27/11/19 Срд 16:44:28 1530827221
Аноним 27/11/19 Срд 17:01:00 1530833222
>>1530776
Это и есть не кресты, иначе moc был бы не нужен.
Аноним 27/11/19 Срд 18:56:15 1530973223
>>1530776
Так QT это и не кресты, а говноподелие для макак формошлепов.
Аноним 27/11/19 Срд 19:01:16 1530983224
>>1530776
Ну а хули ты хотел, рефлексия на 1998 год или когда там.
Аноним 27/11/19 Срд 19:26:32 1531002225
>>1530973
Ты на винапи кодишь?
Аноним 27/11/19 Срд 19:42:48 1531022226
Аноним 27/11/19 Срд 19:48:51 1531028227
>>1530973
Что, даже если это консольное приложение? Или ты кут в глаза не видел?
Аноним 27/11/19 Срд 20:28:27 1531056228
>>1531002
Да, знаю всю графическую подсистему винды наизусть. Первое, что должен уметь делать каждый С++ программист - это писать врапперы под апи своей оси, только макака будет качать 100гб кюти-говна и тащить за собой 10 метров дллок ради формочки из коробки.
Аноним 27/11/19 Срд 20:36:24 1531066229
>>1531056
>Первое, что должен уметь делать каждый С++ программист - это писать врапперы под апи своей оси
NIH syndrome во все поля.
Аноним 27/11/19 Срд 20:38:13 1531069230
>>1531066
Это даже не NIH, это "Давайте будем тащить сишку в плюсы, хз, зачем".
Аноним 27/11/19 Срд 20:53:18 1531085231
>>1531056
>Да, знаю всю графическую подсистему винды наизусть. Первое, что должен уметь делать каждый С++ программист - это писать врапперы под апи своей оси
У тебя ПТСР
Аноним 27/11/19 Срд 21:11:41 1531112232
image.png (471Кб, 1336x1452)
1336x1452
image.png (389Кб, 1808x932)
1808x932
Анон, помоги с MPI, пожалуйста. 1 пик код, 2 пик попытка запустить этот код. Почему-то процессы запускаются, но по очереди(о чём свидетельствует "MPI_RANK: 0"). ЧЯДНТ? Запускаю не так, или в коде проблема? Добра тебе заранее.
Аноним 27/11/19 Срд 21:58:21 1531180233
>>1531066
>>1531085
А вы я смотрю кроме хеллоуворлдов и формочек ничего не клепали. Во взрослой разработке всегда придется дрочить ось-апи, ибо в паблике нихуя нет, кроме фрейморка для формошлепов.

> inb4 ко-ко-ко а как же БУСТЪ!
А вот его тоже не хватает, представьте себе. Особенно под винду.

>>1531069
Ну можешь тащить сишечку, а нормальные люди пишут врапперы.
Аноним 27/11/19 Срд 23:17:45 1531232234
>>1531180
Вендролокнутая на винду взрослая разработка - мечта просто. Как НИИ называется?
Аноним 27/11/19 Срд 23:20:24 1531233235
>>1531232
ну мы в NVIDIA это делаем за 400кк\нс. И да, это правда мечта.
Аноним 28/11/19 Чтв 00:17:10 1531250236
>>1530578
precompiled headers, и вообще изучи билд-систему, процесс компиляции и линковки
Аноним 28/11/19 Чтв 00:25:39 1531254237
>>1531232
Мань, вендролукнутное это про педиков из эпл, у майкрософт уже давно все чики-пуки.
Еще раз говорю, всех этих бустов хватает на написание калькулятора, в лучшем случае. Если вы не заметили, то майкрософт выпускает новую ось каждые полгода.
Аноним 28/11/19 Чтв 00:34:39 1531258238
>>1531254
>у майкрософт уже давно все чики-пуки. 
>майкрософт выпускает новую ось каждые полгода
ха-ха
Аноним 28/11/19 Чтв 02:11:56 1531288239
>>1531112
Ахем, какая тема для лабы у тебя?
Аноним 28/11/19 Чтв 02:58:53 1531294240
>>1531112
То, что у тебя на пике(разбить массив по узлам), делается через scatter.
Аноним 28/11/19 Чтв 04:26:39 1531302241
>>1531250
>вообще изучи билд-систему, процесс компиляции и линковки
Я бы с радостью, но есть сколько угодно инфы про языки программирования и очень мало про конкретные компиляторы и линковщики, хотя второе мне кажется более сложным.
То есть я даже понимаю что ты имеешь ввиду и как я бы сделал это в своём компиляторе, но когда я смотрю на эту фигню у меня просто руки опускаются, потому что я не телепат чтобы догадаться что нужно нажать и прописать, чтобы чужая фигня сделала то что мне нужно. И никаких внятных описаний или статей дающих цельное представление тоже не могу найти.
Аноним 28/11/19 Чтв 04:43:57 1531303242
>>1531302
Сириусли? Звучит как неумение в гугл, или в английский. Ищи доки по своему компилятору, билд системе и т.п., а вообще обзоры с высоты птичьего полёта есть в банальной википедии.
https://docs.microsoft.com/en-US/visualstudio/msbuild/msbuild - MSDN раздел по вижуал студиевской MS Build, там и туториал и разложение по полкам
https://cmake.org/cmake/help/v3.16/guide/tutorial/index.html туториал по текущей версии CMake
или что там у тебя, надо искать самому тогда
По precompiled headers есть прекрасная обзорная статья в википедии и ссылки в ней. По линкерам аналогично.
https://en.wikipedia.org/wiki/Name_mangling вот это ещё можешь почитать для общего развития, чтобы когда будешь разбираться в остальном, не возникало вопроса "а хули имена такие корявые".

В целом кресты компилируются реально долго, они не затачивались под скорость компиляции, и прекомпилированные хэдеры - не панацея, под них надо подгонять структуру исходников изначально. Но знать всё это надо, ты неизбежно будешь контактировать с этим при работе с нативным кодом на любом языке, а то даже и при использовании какого-нибудь из source-based линуксов.
Аноним 28/11/19 Чтв 05:10:14 1531305243
>>1531303
>Сириусли?
Угу. Почти три года ковыряю кресты "по выходным" трогая всякое, субъективно знаю почти все особенности до 17 стандарта, за исключением некоторых штук с шаблонами. А с мейками и подключением чужих либ беда - каждый как первый пытаюсь разобрать как оно работает.

Я нашёл как сделать эти precompiled headers и уже их добавил (3 секунды вернулись даже несмотря на то, что я не всё смог запихнуть в эти precompiled, за что большое спасибо), но никакого понимания cmake мне это не добавило. Угу, теперь примерно представляю как такое сделать в простой ситуации, но если мне потребуется сделать что-то ещё - я всё ещё абсолютно не понимаю как сделать это на cmake без форумов и туториалов.
Аноним 28/11/19 Чтв 08:30:44 1531338244
Сап, крестаны! не нашел отдельную ветку по Qt Creator'у, спрошу сдесь: как я понял, из всей кроссплатформенности в данной IDE мы имеем только ее кроссплатформенность (она красиво ставится и работает везде), но, запустив креатор под виндой, чтобы собрать исполняемый файл, например для linux x86, или (еще лучше) под arm lunux (малинку) нужно пердолиться без трусов. Не проще ли пердолить Qt creator сразу под Linux? и какой линукс ставить 64 бит или 32 бит? Вообще сдесь есть ветка для кутят?
Аноним 28/11/19 Чтв 09:06:32 1531347245
Аноним 28/11/19 Чтв 09:10:27 1531348246
>>1531338
>Не проще ли пердолить Qt creator сразу под Linux
Проще.
Аноним 28/11/19 Чтв 16:02:59 1531647247
>>1526322 (OP)
Реально ли из Шарпа на плюсы пересесть? Насколько сложно?
Интересует именно синтаксис, копипастом программу перенести же не получится? И знание сишарпа сильно будет мешать при кодинге на плюсах.
Аноним 28/11/19 Чтв 16:30:34 1531666248
>>1531647
Реально, сложно. Синтаксис будет очень непривычным.
Нужно понимать, что плюсы более низкоуровневые. Стандартная библиотека скуднее. Вместо сборщика мусора умные указатели или ручное управление памятью. Байтоёбство во все поля. Много небезопасных операций, вызывающих undefined behavior. И очень много самых разных синтаксических конструкций. В общем, нюансов много, и шарп поможет только тем, что ряд подходов общий для всех основных языков, и ты их уже знаешь.
Аноним 28/11/19 Чтв 16:50:09 1531674249
Подскажите что читать на тему spinlock/mutex/rwlock
Аноним 28/11/19 Чтв 16:55:13 1531682250
Аноним 28/11/19 Чтв 17:03:53 1531689251
Аноны, тут такая проблема. Допустим, я хочу проверить, соответствует ли введённая фраза заданной. Я могу сделать это через cin, требуя вводить _ вместо пробелов:

string s, check;
s = "hello_world";
cin >> check;
if (check==s) {cout << "yes"};
else {cout << "no"};


И всё идёт как надо, компилятор ждёт моего ввода и только затем сравнивает введённую фразу с заданной. Но из-за _ вместо пробелов это убого и неудобно. И я пытаюсь использовать getline:

string s, check;
s = "Hello, World!";
getline(cin, check);
if (check==s) {cout << "yes"};
else {cout << "no"};


Но в этом случае компилятор не ждёт, пока я введу фразу, а сразу выполняет else и выводит no. Как сделать, чтобы этого не происходило?
Аноним 28/11/19 Чтв 18:52:15 1531753252
>>1531689
У тебя это внутри одной программы? По-моему нулевой символ в буфере у тебя остается и потом через гетлайн записывается туда сразу.
Аноним 28/11/19 Чтв 18:58:44 1531755253
>>1531753
Алсо почему у тебя ; после } скобки? Компилятор ничего не сказал?
Аноним 28/11/19 Чтв 19:38:23 1531773254
getlinemain.png (74Кб, 720x689)
720x689
getlinevoid.png (160Кб, 720x1197)
720x1197
getlineresult.png (11Кб, 720x188)
720x188
>>1531753
Ну да, но я потестил, в main (первый скриншот) getline работает нормально, а вот в отдельной void функции (второй скрин) компилятор сразу выдаёт то, что по else (на третьем скрине можешь увидеть, он даже не просит ввести, сразу выводит текст и перескакивает на следующий ввод, где я оставил просто cin, без getline)

>>1531755
Так я не из компилятора копировал, а просто для примера написал прямо в сообщении, немного невнимательно
Аноним 28/11/19 Чтв 20:01:56 1531790255
>>1531773
Я же тебе говорю, у тебя cin берет из буфера твою цифру, а нулевой символ от нажатия enter нет. Когда программа доходит до getline, из буфера cin сразу берется этот нулевой символ, он естественно отличается от твоей строки s и программа переходит к else.
Добавь после cin>>a; строку cin.ignore();
Аноним 28/11/19 Чтв 20:15:04 1531799256
>>1531790
Сработало, спасибо. Ты кстати как C++ изучал? Я просто выучил по SoloLearn, как написать простой код понимаю, но вообще как всё работает понимаю не очень
Аноним 28/11/19 Чтв 20:26:40 1531803257
>>1531288
MPI. Проблема в том, что с openmpi всё работает, а тут процессы запускаются последовательно, что не есть кошерно.

>>1531294
Мне не нужно разбивать массив по узлам, суть была в том, что один процесс кидает другому числа, тот их суммирует, кидает результат обратно, и первый выводит на экран. Но это неважно, я хочу понять, где я проебался при запуске.
Аноним 28/11/19 Чтв 20:40:51 1531813258
Аноним 28/11/19 Чтв 20:44:27 1531815259
>>1531799
Да по верхам немного нахватался только, нихуя я не выучил.
Аноним 29/11/19 Птн 02:27:22 1532115260
1
Аноним 29/11/19 Птн 11:07:26 1532188261
>>1531813
Это MPI. Код то у постера на плюсах, а сам MPI для си как разрабатывался (еще в 90-х), так и разрабатывается, поэтому у него такие биндинги.
>>1531112
У тебя какой-то неправильный mpirun. Какого хуя оба процесса в rank=0? Гугли в этом направлении, мб поставил неправильно, либо mpirun И mpicc различных версий.
Аноним 29/11/19 Птн 18:36:15 1532576262
>>1532188
Так в том-то и прикол, юзал mpich, по мануалам всё должно работать, авотхуй. Он запускает один поток, абортит его из-за отсутствия второго, потом запускает второй поток и абортит его из-за отсутствия второго (так как он единственный). Что-то бред какой-то. Ладно, я уже понял, что проблема не в коде. Буду гуглить про сам мпи.
Спасибо, аноны!
sizet VS int Аноним 30/11/19 Суб 00:36:52 1533356263
В интернетах нахожу массу аргументов за использование int вместо size_t.
Но что делать с ебучими варнингами?
>warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data

их так много, что они мешают читат output компиляции.
Аноним 30/11/19 Суб 00:45:31 1533365264
Аноним 30/11/19 Суб 01:12:44 1533385265
>>1533356
Хуй его знает что за дебилы топят за int. Особенно удивляют дебилы, которые везде пихают static_cast<int> и используют его в беззнаковом контексте
Аноним 30/11/19 Суб 01:20:27 1533388266
>>1533385
Ошибки со знаковым int проще обнаруживаются.
И еще с ним в некоторых случаях код попроще получается.
Аноним 30/11/19 Суб 01:21:39 1533389267
>>1533388
> Ошибки со знаковым int проще обнаруживаются.
> И еще с ним в некоторых случаях код попроще получается.
Это мантра или у тебя есть примеры? Какие ошибки, какой код?
Аноним 30/11/19 Суб 01:26:37 1533392268
>>1533365
Это единственный способ?
От этих кастов код распухает как на дрожжах.
Аноним 30/11/19 Суб 01:28:15 1533393269
>>1533389
Э, бля, вобщет я здесь вопросы задаю.
Вываливай свои контрпримеры с кодом, если ты такой умный.
Аноним 30/11/19 Суб 01:45:26 1533400270
>>1533392
Путь С++ - путь, страданий. Терпи.
Где можно, используй ranged for, или таки size_t - в большинстве случаев он вполне безопасен.
Аноним 30/11/19 Суб 02:37:29 1533416271
class A{
protected:
virtual void initContent() { //... }
};

class B : public A{
protected:
void initContent() { //... }
};

Почему при вызове метода в B (Bobject.initContent()) вызывается метод из A?
Аноним 30/11/19 Суб 02:38:36 1533417272
>>1533416
Не через точку, не суть
Аноним 30/11/19 Суб 02:41:35 1533418273
>>1533417
override попробуй добавь.
Аноним 30/11/19 Суб 02:55:08 1533425274
>>1533393
Нвидия-кун, отъебись
Аноним 30/11/19 Суб 03:26:52 1533434275
>>1526431
>Теперь найди нормальную криптографическую функцию, которую можно написать c constexpr.
вася падпивасный
Аноним 30/11/19 Суб 13:46:38 1533668276
Class A{
...
public:
A(int n = 1, int m = 1) {...};
};

Class B : public A{
...
public:
B(int n) {...};
};

Почему при вызове new B(n) сначала вызывается A(1, 1), а потом уже работает B(n)?
Аноним 30/11/19 Суб 13:47:04 1533669277
Аноним 30/11/19 Суб 14:15:28 1533716278
>>1533668
Потому что сначала вызывается конструктор базового класса. В этом случае неявно, т.к. все параметры по умолчанию. Убери один - вообще перестанет собираться, пока явно не укажешь
Аноним 30/11/19 Суб 15:53:29 1533796279
>>1533716
Предположим, в базовом классе у меня есть protected virtual метод, который вызывается в конструкторе и переопределяется в наследнике. Можно ли сделать так, чтобы во время вызова конструктора базового класса при вызове конструктора наследника выполнялся переопределённый метод, а не изначальный?

class A{
protected:
virtual void foo() {};
public:
A() {}
};

class B : public A{
protected:
void foo() {};
public:
B() {}
}?
Аноним 30/11/19 Суб 15:53:48 1533797280
Аноним 30/11/19 Суб 16:54:43 1533828281
>>1533796
Нет, невозможно. И даже если бы это было возможно, так делать очень плохая идея, вдруг метод в базовом классе делает что-то такое, что ты забыл учесть при его переопределении.
Аноним 30/11/19 Суб 16:56:50 1533830282
Аноним 30/11/19 Суб 17:48:15 1533860283
Аноним 30/11/19 Суб 18:25:35 1533893284
>>1533860
Класс A ничего не знает о своих потомках и не зависит от них. Соответственно, не получится.

Впрочем, есть способ. Каким-нибудь способом передать в A указатель типа A, указывающий на объект типа B. Затем в A::foo() обратиться по этому указателю к foo(). Так как метод foo() виртуальный, вызовется B::foo().
Но не делай так. Код становится нечитаемым, к тому же очень легко получить бесконечную рекурсию.
Аноним 30/11/19 Суб 18:26:27 1533895285
>>1533860
Когда вызывается конструктор наследника, сначала вызывается конструктор базового, в котором срабатывает метод foo, опеределённый в базовом, затем работает конструктор наследника, в котором вызывается собственно B::foo
Аноним 30/11/19 Суб 19:19:01 1533951286
void foo(){
vector<A*> v;
}

void bar(){
a = A();
v.push_back(&a);
}

Когда bar() заканчивает работу, объект a разрушается. Как сделать так, чтобы после выхода из bar() объект a не разрушился, а ссылка на него осталась в векторе?
Аноним 30/11/19 Суб 19:19:31 1533952287
Аноним 30/11/19 Суб 19:23:16 1533955288
>>1533951
Например, создавать объект через new.
Аноним 30/11/19 Суб 20:51:07 1533986289
>>1533955
if(...){
A *a = new A();
...
}

std::cout << a; - Ошибка - a не определён

Я что-то не так делаю?
Аноним 30/11/19 Суб 20:52:37 1533987290
В треде тролль, тролит тупостью
>>1533986
Аноним 30/11/19 Суб 20:56:20 1533996291
>>1533986
Почитай про область видимости переменных. В частности, переменная a видна только до конца тела if, дальше к ней нельзя обратиться.
Можно, например, вынести A *a за пределы тела if, а уже в самом теле писать a = new A();
Аноним 30/11/19 Суб 21:10:01 1534006292
Как считаете, к программированию нужен врожденный талант типа как к музыке и рисованию, или это вещь полностью обучаемая.
Аноним 30/11/19 Суб 21:13:56 1534008293
>>1534006
> 2019
> верить во врождённый талант
Аноним 30/11/19 Суб 21:25:26 1534014294
>>1534006
оно пиздец какое скучное, требует запомнить много информации за раз, оттого и непопулярное
Аноним 30/11/19 Суб 22:00:25 1534028295
>>1534008
То есть ты считаешь, что у 10 условных человек будет одинаковый прогресс в этом деле за один и тот же промежуток времени?
Аноним 30/11/19 Суб 22:00:59 1534030296
>>1534028
У 10 разных человек, разный бекграунд
Аноним 30/11/19 Суб 22:03:26 1534032297
>>1534006
Именно для проги талант не нужен совсем. Может есть что-то вроде склонности, но это скорее про то интересно тебе или нет. Ну возможно в олимпиадной проге, то есть в решение задачек, можно быть талантливым, но как бы это не особо влияет по жизни, да и все равно там нужно прикладывать дохера усилий чтобы быть жестким
Аноним 30/11/19 Суб 22:43:57 1534049298
>>1534028
Если этих 10 человек держать в абсолютно одинаковых условиях с рождения, то да, прогресс будет одинаковый +- погрешность. Но уж точно прогресс не определяется рандомом до рождения.
Аноним 01/12/19 Вск 00:50:51 1534108299
Caп. Ecть тут люди, которые шарят в qml?
А если точнее, то нужно мне менять масштаб через scale. Но качество картинки получается такое ебанейшее, что просто пиздец. Можно как-то повлиять на него?
Аноним 01/12/19 Вск 01:18:09 1534117300
>>1534108
Можно изначально делать итем достаточно большим, чтобы он всегда скейлился в меньшую сторону. А если у тебя там только векторная графика и шрифты, то вообще не вижу проблем.
Аноним 01/12/19 Вск 18:20:01 1534960301
Помогите плиз лабу сделать. Я сам не программист но приходится.
Задание : Дано строка состоящая из цифр разделённых пробелами.
Вывести только чётные числа.
Моя прога : #include "pch.h"
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
int main()
{
int n, i, chislo;
char st[81];
puts(" Input string ");
gets_s (st);
n = strlen(st);
i = 0;
for (i = 0; i < n; i++) {

if (st == ' ' && st[i + 1] != ' '){

chislo = st;
if (chislo % 2 == 0) {

cout << st << "";
}
}
}
Аноним 01/12/19 Вск 19:01:54 1535003302
>>1534960
#include <stdafx.h>
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
int main()
{
int n, i, chislo;
char st[81];
puts(" Input string ");
gets_s (st);
n = strlen(st);
i = 0;
for (i = 0; i < n; i++) {

if (st != ' '){

chislo = st;
if (chislo % 2 == 0) {

cout << st << " ";
}
}
}
getchar();
}
Если у тебя дана строка из цифр, то и выводить тебе цифры надо, верно? Для чисел нужна другая проверка, там хуй знает сколько надо разрядов. Я тугой в плане построения алгоритмов.
Аноним 01/12/19 Вск 19:06:06 1535011303
>>1535003
А, ты так и сделал, у тебя макаба съела индексы тегом италика.
Аноним 01/12/19 Вск 21:06:05 1535198304
>>1534960
>прекомпилед хедер в проекте из одного файла
>вперемешку с другими инклюдами
>int chislo
>объявлять i не в цикле
><conio.h>

Комбо "laba1.cpp starter pack"
Аноним 01/12/19 Вск 21:27:40 1535238305
Мне вот только одно не понятно. Сегодня первое декабря, лабы у детсадовцев уже должны закончиться.
Абу своих ботов уже и на тематику натравил?
Аноним 01/12/19 Вск 21:37:42 1535251306
>>1535238
Хуй у них лабы закончатся. То сдать на последних парах, то сдать во время зачётиков, то сдать долг в следующем семестре.
Аноним 01/12/19 Вск 21:51:12 1535270307
Аноним 01/12/19 Вск 21:56:09 1535275308
Аноним 01/12/19 Вск 22:00:59 1535282309
Аноним 01/12/19 Вск 22:03:30 1535285310
>>1535275
Тогда пиши на Си сразу, хули.
Аноним 01/12/19 Вск 22:05:05 1535290311
>>1535285
Если бы я знал как...
Аноним 01/12/19 Вск 22:06:54 1535293312
>>1535238
С хуя? Сессия в конце декабря/начале января только.
>>1535282
Так там цифры или числа?
Аноним 01/12/19 Вск 22:17:10 1535319313
>>1535290
http://cpp.sh/4je3h
Сорян за говнокод если что, я немного бухой + на чистом Си давно не писал.
Аноним 01/12/19 Вск 22:27:11 1535341314
>>1535198
А еще там кроме using namespace std - все из чистого си, лол

conio.h кстате классная вещ если она есть
Аноним 01/12/19 Вск 22:32:11 1535350315
Аноним 01/12/19 Вск 22:40:14 1535369316
>"int atoi(const char )": невозможно преобразовать аргумент 1 из "char" в "const char "
Я уже забыл что там за хуйня с этими char массивами. Как введенную строку в константу-то превратить?
Аноним 01/12/19 Вск 22:47:58 1535381317
>>1535341
Поэтому и не классная, что есть не везде. На линуксе вот придётся жонглировать опциями терминала.
Аноним 01/12/19 Вск 22:48:49 1535382318
>>1535369
>невозможно преобразовать аргумент 1 из "char" в "const char* "
Правильно расшифровал? Ты хочешь символ в число перевести?
Тогда n = c - '0';
Аноним 01/12/19 Вск 23:16:06 1535416319
>>1535382
Да, из его примера i-ый символ из char массива.
Аноним 01/12/19 Вск 23:30:39 1535444320
>>1535381
Так и нет в природе альтернативы, которая работала бы везде и сразу.
Аноним 01/12/19 Вск 23:40:47 1535456321
>>1528169
GLM, но я не уверен в потокобезобасности, да и вообще, мне кажется не задача математической либы её обеспечивать.
Аноним 01/12/19 Вск 23:53:33 1535466322
>>1535444
Есть. Называется "использование сторонних библиотек".
Аноним 01/12/19 Вск 23:59:34 1535468323
>>1528169
что такое "потокобезопасная библиотека" в данном контексте?
Вся линейная алгебра это чистые функции, которые потокобезопасны по определению, не?
Аноним 02/12/19 Пнд 00:16:06 1535481324
>>1535468
Не хранящие глобального состояния, например. Вдруг есть библиотека вида:
set_a(vector_a);
set_b(vector_b);
multiply();
int result = get_global_result();
Аноним 02/12/19 Пнд 02:05:51 1535515325
>>1535466
conio.h и есть сторонняя по отношению к с++ библиотека.
Аноним 02/12/19 Пнд 08:00:59 1535556326
>>1535319
>Аноним
А можно попроще? Ну прям чтобы для дебилов
Аноним 02/12/19 Пнд 08:54:10 1535570327
>>1535293
>Сессия в конце декабря/начале января только.
а у заочников? :3
Аноним 02/12/19 Пнд 12:07:17 1535712328
>>1526322 (OP)
Ананасы ещё вопрос возник.

Мне нужно распарралелить циклы управляемо, помню что есть openmp. VS 2010 стоит.

Задачи для копирования из массива в массив, а так же операций над ними.

Openmp мне хватит для этих задач? И возможно ли распарралелить копирование в оперативку, естественно каждая нить - копирует в один или группу каких-то неиспользующуюся другими нитями область или адрес?
Аноним 02/12/19 Пнд 17:57:30 1536044329
>>1535712
распараллеливание будет выгодно, если над каждым элементом массива проводятся интенсивные вычисления на цп
в случае же перекидывания данных с одного места на другое прирост производительности в случае распареллеливания будет минимальный, так как вообще до доступ к оперативной памяти у тебя последовательный, ну а прирост будет лишь в том случае если память работает в двухканальном режиме
Аноним 02/12/19 Пнд 18:15:26 1536060330
(81Кб, 537x989)
537x989
>>1536044
>если над каждым элементом массива проводятся интенсивные вычисления на цп
Я покупал новую плашку и написал для неё какой-то тест на коленке. Твои слова звучат немного как чушь, потому что если там просто в цикле a=i, то в несколько потоков это работает в два раза быстрее, хотя интенсивными вычислениями там даже близко не пахнет.

Любопытно, что произвольная запись работает с одинаковой скоростью, а произвольное чтение ускоряется. Читаются/пишутся разные ячейки, не одна и та же, само собой.
Аноним 02/12/19 Пнд 18:21:55 1536065331
>>1536044
>если память работает в двухканальном режиме
Хотя я же не знаю что такое двухканальность. Одна плашка может работать в двухканальном? Это бы всё объяснило.
Аноним 02/12/19 Пнд 19:11:16 1536091332
>>1536065
Вроде бы двуранговая лучше, но это не двух канал, хотя там доступ быстрее чем в одноранговой.

>>1536044
Если так, то печально, я думал над этим
>>1536060
А вот если так, то отлично.

Мне нужно в некоторых задачах именно параллельное копирование.

Аноним 02/12/19 Пнд 22:18:36 1536213333

Потыкал тут D и он мне очень понравился, но аноны говорят что он мёртворожденный и никогда не выстрелит и что бы я смотрел в сторону плюсов и Rust.

Что можете сказать о D и его будущем?
Все же вы тут народ опытнее и потолковее, чем на остальной доске

Аноним 02/12/19 Пнд 22:22:03 1536216334
>>1536213
Он мёртворожденный и никогда не выстрелит. Посмотри в сторону плюсов и Rust.
Аноним 02/12/19 Пнд 22:34:03 1536219335
>>1536213
Мне тоже понравился D, но к нему нет ide, нет либ, нет ничего. И не будет.
Если бы был D вместо С++, это было бы чуточку лучше в целом для мира программирования, но на С++ уже такая база вообще, что это своего рода локальный минимум, причём очень-очень глубокий - и D не так сильно отличается, что бы его микроскопическая яма была хоть чуть-чуть заметна рядом с пропастью С++. Он сможет существовать только если у него будет полная обратная совместимость, так чтобы вообще любой крестовый код сходу компилировался и работал.
Аноним 02/12/19 Пнд 22:35:59 1536220336
>>1536213
ну смотри, он появился в 2001, и на нем так до сих пор вообще никто и не пишет. И нет вообще никаких признаков, что начнут. Даже сам Александреску на конфах по С++ тусит нынче.
Аноним 02/12/19 Пнд 22:51:23 1536228337
Что будет, если бросить исключение в деструкторе? Приглашаю сеньоров итт порассуждать, зачем вообще такое может понадобиться.
Аноним 02/12/19 Пнд 22:52:37 1536231338
xbox kid.jpg (21Кб, 300x411)
300x411
>>1536228
>Что будет, если бросить исключение в деструкторе
Если у тебя разматывается стек, то терминейт тебе.
>зачем вообще такое может понадобиться
Чтобы показать всем в интернете, какой ты дебил.
Аноним 02/12/19 Пнд 22:57:48 1536238339
>>1536228
> Что будет, если бросить исключение в деструкторе?
Ничего плохого, пока во время размотки стэка не бросится второй, и там уже std::abort.

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

Аноним 02/12/19 Пнд 23:07:43 1536251340
>>1536228
Исключения в языке без сборки мусора - это полный пиздец. Если и кидать исключения, то юзать смартпоинтеры. И пох, в деструкторе это или нет.
Аноним 02/12/19 Пнд 23:31:32 1536264341
>>1536213
Ничего, я позапрошлый раз раз смотрел за ним 4-5 лет назад, когда активно шли разговоры о разгоне гц, вроде как договорились что надо допилить гц чтобы он знал о типах и сделать генеративную сборку. Вроде как и такой, и даже паралельный с лоу паузами был, но никто не хотел переносить с D1 и допиливать.. Прошлый раз на него смотрел где-то год назад, все резко договорились что гц не нужен (работы в этой части за несколько лет сделано 0, лол) DIP25, DIP1000, делаем как в русте только круче, все дела. Посмотрел сейчас — DIP1000 послали нахуй, выкатили DIP1021 — как руст, только более кастратский вариант, что-то пыл резко убивился, лол. Нихуя не понятно что и как с ним, даже стд либа его скорее всего поддерживает примерно никак, зато в языке за это время появились ещё 2 сотни фич. Всё что нужно знать о D и о Александерску с Брайтом, или как проёбывать все полимеры 20 лет подряд.
Аноним 02/12/19 Пнд 23:34:05 1536266342
>>1536251
Исключения вообще сами по себе пиздец, нарушающий структуру всего, это блядь, даже не goto, это эдакий типизированный longjmp, который по хорошему надо избегать вообще везде.
Аноним 03/12/19 Втр 00:06:17 1536282343
>>1536266
вот тут, пожалуй, не соглашусь. Исключения это охуенно, и помогают делать охуенный и красивый код. Правда да, в легаси говне и прочей параше ими пользоваться нереал.

А вот в чистеньком новом проекте на C++1488, вполне отлично
Аноним 03/12/19 Втр 01:36:26 1536301344
>>1536282
>>1536266
>>1536251
Вы откуда вылезли, ньюфани? В сишечке без исключений вообще никак. А goto вас чем не устраивает? RAII то нет, а крутиться надо.
Аноним 03/12/19 Втр 01:48:43 1536307345
>>1536266
Двачую.

>>1536282
>Исключения это охуенно
Нет ничего охуенного в нарушении контекста выполнения.
А многопоточное\конкурентное программирование превращается в сплошной ад с этой хуйней.
Аноним 03/12/19 Втр 10:08:40 1536372346
>>1536307
>>Исключения это охуенно
>>Нет ничего охуенного в нарушении контекста выполнения.
че? при исключении происходит раскрутка стека вообще то, контекст выполнения не страдает
а вот когда делаешь магию на сишном longjmp, то да, надо самому вытирать себе жопку


Аноним 03/12/19 Втр 10:36:10 1536385347
а я хочу еще напомнить, что страуструп ввел исключения в язык по вполне практическим приземленным соображениям: а именно он не понимал как можно красиво вернуть ошибку в случае конструкторов и определения операторов в классах

страуструп вообще считает возможность определения пары конструктор-деструктор и определения пользовательских операторов ключевыми особенностями языка, так как они лежат в основе создания новых типов данных
при этом как то ошибку нужно было возвращать оттуда
вот пришлось и исключения в язык вводить

Аноним 03/12/19 Втр 10:39:23 1536386348
>>1536372
Сейчас бы в 2к19 кидать исключения, лол-кек. Все нормальные люди возвращают Either[T, E].
Аноним 03/12/19 Втр 10:42:45 1536388349
>>1536386
>Все нормальные люди возвращают Either[T, E].
через все дерево вызывов? больной ублюдок
Аноним 03/12/19 Втр 10:42:53 1536389350
>>1536264
как по мне, александреску убил вторую половину своей жизни впустую
а ведь его "современное программирование на с++" в нулевые были как откровение свыше, объяснение того, как, к примеру, можно часть паттернов из "банды четырех" реализовать на статике, на шаблонах, без использования ооп, без техники включения или без динамического полиморфизма..
все же нытик страуструп был прав, когда долго и упорно всем объяснял, что нужно развивать существующий язык, что нужно сохранять обратную совместимость, что нужно делать что-то новое, используя существующую инфраструктуру языка, а не бросать все и делать заново


Аноним 03/12/19 Втр 10:46:26 1536393351
>>1536251
>Исключения в языке без сборки мусора - это полный пиздец. Если и кидать исключения, то юзать смартпоинтеры.
у тебя есть пара конструктор-деструктор, которая позволяет использовать технику raii; std::unique_ptr реализует технику raii
вторая альтернатива - это подсчет ссылок; подсчет ссылок поддерживается std::shared_ptr
Аноним 03/12/19 Втр 10:48:47 1536396352
>>1536388
Нет, не через дерево вызовов. Сразу видно, что ты обычный микрочелик, который ничего серьезнее cout << "hello"; не писал, лол.
Аноним 03/12/19 Втр 11:01:14 1536404353
>>1536060
ну дык, у тебя память работает в двухканальном режиме..
тут какая забава получается: обычно когда ебашат синтетику, забиваю большой объем памяти в тестируемый массив, ну он и раскидывается по двум плашкам памяти, лол
ну и получают ускорение в 70-90%, что и неудивительно так как читаться/писать будет на обе плашки..

Аноним 03/12/19 Втр 11:02:54 1536405354
>>1536091
>Мне нужно в некоторых задачах именно параллельное копирование.
ты получишь заметное ускорение (процентов на 70%) если у тебя будут копироваться большие объемы данных, сравнимые с текущей емкостью озу у тебя на компе..

Аноним 03/12/19 Втр 11:05:34 1536406355
Аноним 03/12/19 Втр 11:34:19 1536418356
>>1536385
Вот бы он тогда ещё подумал о последствиях в виде текущей памяти. А не только через несколько десятков лет.
Аноним 03/12/19 Втр 14:23:05 1536513357
>>1536418
Тебе жалко чтоли памяти? Перегрузил сервер раз в сутки и все память снова в твоем распоряжении.
Аноним 03/12/19 Втр 14:23:07 1536514358
Как можно максимально приблизить вижлу vs code? Можно конечно настроить, чтобы все дебажилось и собиралось в вс коде, но делать этого я по некоторым причинам не хочу. Но слишком уж вижла какая-то топорная после вс кода. Какие есть может плагины на нее, которые делают вот это дописывание кода более удобным?
Аноним 03/12/19 Втр 14:41:16 1536544359
Аноним 03/12/19 Втр 15:00:29 1536578360
Аноним 03/12/19 Втр 17:47:09 1536856361
image.png (22Кб, 461x221)
461x221
https://ideone.com/4bcVv1#stdin
Аноны, поясните, пожалуйста, что не так?
Выходит пикрил.
Думал что это из-за того что использую i-1 в строке, которая с нуля идет, но попробовал переписать с начальным i - единицей, все равно эта ошибка вылазит, в чем проблема?

(на сайте не компилируется, т..к не открывает string.h, через vs19 компилируется, но выходит пикрил при попытке ввода слов)
Аноним 03/12/19 Втр 18:03:14 1536867362
>>1536856
тебе в C тред, либо перепиши все на std::string
Аноним 03/12/19 Втр 18:05:40 1536871363
Аноним 03/12/19 Втр 18:08:28 1536873364
>>1536856
i равно 0. Проверка на 14 строчке не проходит и поле этого в 18 строчке ты обращаешься к -1 элементу - программа падает.
В си-тред не ходи, этот кролик двинулся со своими std:: уже.
Аноним 03/12/19 Втр 18:10:27 1536874365
>>1536856
тебе в си тред
на крестах это делается в три строчки стрингстримом
Аноним 03/12/19 Втр 18:12:23 1536875366
>>1536856
Очевидно, потому что у тебя нет проверки на (i<90), в итоге, когда i становится 90, ты выходишь за границы массива и получаешь по еблу от ОС за чтение чужой памяти.
мимо-расторак
Аноним 03/12/19 Втр 18:17:17 1536877367
>>1536856
В 14 строчке проверка никогда не выдаст true, потому что x не может быть сразу и пробелом и точкой. Ставь || вместо &&.
Аноним 03/12/19 Втр 18:21:18 1536879368
>>1536873
Да я писал про это, когда заменил на единицу все равно ошибка была, так что не из-за этого, но все равно спасибо
>>1536875
а вот тут да, добавил проверку перед i++ в конце и заработало, спасибо
>>1536877
А мне достаточно одного из них true для программы
Аноним 03/12/19 Втр 18:21:34 1536880369
>>1536856
циклах нет проверки на конец строки

...
10. while (s != '\0' && s != '.')
...
14. while (s != '\0 && (s != ' ') && (s != '.'))
...

https://ideone.com/JXUIp7
Аноним 03/12/19 Втр 18:21:47 1536881370
Аноним 03/12/19 Втр 18:22:04 1536882371
Аноним 03/12/19 Втр 18:24:07 1536884372
>>1536880
макаба спиздила квадратные скобки и все что в них, зырь по ссылке короче
Аноним 03/12/19 Втр 18:24:13 1536885373
>>1536880
по условию конец строки это точка, забыл написать сюда
Аноним 03/12/19 Втр 18:24:38 1536886374
>>1536879
Второй выдаст false, и объединённые логическим AND они выдадут false. Я же написал, что твоя 14 строка никогда не выдаст true.
Аноним 03/12/19 Втр 18:27:03 1536890375
>>1536886
А, стоп, я проебался, и вместо "!=" вижу "==". Сорян, пойду просплюсь.
Аноним 03/12/19 Втр 18:29:43 1536893376
Блин теперь этот костыль с i = 1 мешает, ладно пойду разбираться
>>1536886
Бывает
Аноним 03/12/19 Втр 18:31:24 1536895377
>>1536877
Постоянно ошибаюсь в подобных проверках условия.
Аноним 03/12/19 Втр 18:58:53 1536916378
image.png (22Кб, 391x239)
391x239
https://ideone.com/vjzmwt
Переписал с i+1, но в итоге все равно переполнение, теперь видимо в другую сторону, хотя вроде длину сразу ограничил
Аноним 03/12/19 Втр 19:02:54 1536920379
>>1536916
Чувак. У тебя есть дебаггер - пройдись и посмотри, когда падаешь.
мимопроходил
Аноним 03/12/19 Втр 19:09:13 1536922380
>>1536920
да я понимаю где выпадает, я не понимаю как использовать s[i-1] или s[i+1] если они постоянно переполняется
Аноним 03/12/19 Втр 19:10:04 1536924381
>>1536916
Можно даже без дебаггера, просто в каждой строчки по три раза (после каждого действия) выводи значение всех индексов и переменных - эдакий наколенный дебаггер.

У меня нет переполнений, у меня в бесконечный цикл твоя штука ушла, тому что индекс не вовремя прыгнул на 2 и проверки при которых i изменяется уже не могут пройти.
Тебе написать эту штуку? Я сейчас в душ залезу и могу написать с комментариями, если нужно; могу ещё и в дискорде всё объяснить потом.
Аноним 03/12/19 Втр 19:13:10 1536927382
>>1536924
Понял, сейчас попробую.

Было бы хорошо, но я ща еще полчаса сам покопаюсь, если не смогу напишу
Аноним 03/12/19 Втр 19:20:06 1536930383
изображение.png (6Кб, 722x180)
722x180
>>1536916
Ты походу там ideone поломал, лол
Аноним 03/12/19 Втр 19:25:11 1536933384
>>1536930
Извиняюсь
>>1536924
Я короче по бумажке напроверял, вроде все правильно код работает, запустил отладку, код работает, запустил код - код сработал. Ничего не поменял, но все стало работать, хз что за магия
Аноним 03/12/19 Втр 19:26:34 1536934385
>>1536922
char si = [92];
si[0] = 0;
si[91] = 0;
char *s = &si[1];

Не помню как в ваших этих крестах использовать указатель в качестве имени массива. Но можешь вот так вот сделать.
опять-мимо-расторак
Аноним 03/12/19 Втр 19:49:10 1536948386
>>1536933
В общем вот, я всё-равно уже почти написал - не поверил что ты разберёшься.
https://ideone.com/8yPDpi
Это максимально понятное разложенное по полочкам, что я могу придумать. Рекомендую примерно так и писать, и только уже сильно потом сворачивать все проверки в одну строчку с -1 индексами, когда понимаешь что оно будет делать, как и зачем. fgets - просто чтобы ideone скомпилировал, и чтобы при строчке длиннее 1024 строчка просто обрезалась без ошибок.
Аноним 03/12/19 Втр 19:58:04 1536955387
>>1536933
Это значит, что где-то в коде UB. Попробуй в релизе собрать или выключи SDL и Basic Runtime Check в дебаге, тогда меньше шанс зануления памяти, соответственно больше шанс вылететь из-за UB
Аноним 03/12/19 Втр 20:02:43 1536962388
>>1536955
Но ведь если бы не рантайм чек, хуй бы оно вообще упало. Так и читал бы, обмазываясь UB до первого нуля.
Аноним 03/12/19 Втр 20:07:09 1536971389
>>1536962
Как раз наоборот. В дебаге при включенных проверках больше шанс, что память будет в ноликах. Мелкие сами об этом пишут в описании к SDL/BRC
Аноним 03/12/19 Втр 20:33:34 1536998390
Наконец-то закончил эту блоксхему рисовать... Программисты их вообще используют, разрисовывают?? Я просто не шарю пока

>>1536948
Посмотрел, впринципе все понятно, state правда мы не использовали еще. Такую точно не примут, скажут своровал у кого-то, но спасибо, поразбираюсь сам
Аноним 03/12/19 Втр 20:36:35 1536999391
>>1536998
>Наконец-то закончил эту блоксхему рисовать... Программисты их вообще используют, разрисовывают?? Я просто не шарю пока
Лол нет. Вообще никогда.
Аноним 03/12/19 Втр 20:38:24 1537002392
2.png (32Кб, 396x781)
396x781
>>1536999
а зачем нас дрочат ими так, я заколебался вот это рисовать
Аноним 03/12/19 Втр 20:39:10 1537003393
>>1537002
наверное вашему среднему преподавателю больше 50 лет, и из этих 50 лет он программистом не работал ни дня.
Аноним 03/12/19 Втр 20:43:07 1537005394
>>1537003
Как-то грустно теперь
Аноним 03/12/19 Втр 20:45:58 1537007395
>>1536998
Иногда. Именно блок-схемы — никогда, whiteboarding — иногда. Первое — ебанутая хуета, второе — полезно для понимания того, что ты вообще делаешь. И зачем.
Аноним 03/12/19 Втр 20:47:14 1537008396
>>1537003
Нам вообще говорят, что мы этим заниматься будем в будущем (блок схемы рисовать, а не прогать) типа спец-ка у нас такая (инф. системы и технологии)
и мы их все 4 курса будем рисовать. Походу я куда-то не туда попал
Аноним 03/12/19 Втр 20:49:40 1537009397
>>1537008
Диаграммы рисовать иногда надо. Там какая-нить коммуникация микросервисов там, различных компонентов и тд. Но она не формализирована, как хочешь так и рисуешь.

Но вот такую хуйню как на пикрелейтеде я рисовал только в универе, который нахуй дропнул потом.
Аноним 03/12/19 Втр 20:59:15 1537016398
>>1536998
При написании сложных алгоритмов некоторые иногда используют псевдокод. Но такие вот блок-схемы не использует никто и никогда.
Аноним 03/12/19 Втр 21:00:52 1537019399
>>1536219

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

Ты только что изобрёл Qt MOC
Аноним 03/12/19 Втр 21:02:35 1537021400
>>1537016
>>1537009
Мб тогда сказать преподу или повыше кому-нибудь, чтобы нас не заебывали ими, раз это нахуй не нужно?
Аноним 03/12/19 Втр 21:05:59 1537027401
>>1537021
Я уверен, что до тебя к нему подходила не одна сотня студентов с этим предложением, ибо эта хуйня заёбывает всех до единого. Но препод остался при своём мнении.
Аноним 03/12/19 Втр 21:18:14 1537039402
>>1537002
Удваиваю всех выше про схемы.
Нарисовать схему для взаимодействия сложных структур в какой-нибудь фигне нормально иногда, но рисовать схему для i++ смешно просто - никто никогда в жизни не будет такие мелочи изображать на схеме. Тем более в таком уродском виде. Схема для каких-то глобальных концепций, а не для отдельных строчек или даже функций.

>>1536998
Используй заместо state symb устанавливая его в ноль как вариант. Если он нулевой - то сейчас не число, если какой-то ещё, то там слово.
Или вот на: https://ideone.com/oB192G - но это сработает только с пробелами между слов и точкой в конце. ":asdf12&$!@:" - тоже будет словом, которое начинается и заканчивается на один и тот же символ.
Аноним 03/12/19 Втр 21:21:27 1537041403
>>1537021
Ты правда думаешь, что УВАЖАЕМЫЙ ЧЕЛОВЕК С УЧЕНОЙ СТЕПЕНЬЮ будет слушать какого-то сопляка? Попробуй, потом расскажи нам о результате.

И аргументы о том, что программисты 300кк\нс этой хуйней не занимаются очень врятли их убедят.
Аноним 03/12/19 Втр 22:24:33 1537111404
>>1536514
Не совсе понял. Ты хочешь настройти студию, что бы была похожа на vs code?

Если так, то это равносильно просто сделать её более легковесной, я так и сделал как мог. Поотключай все лишнее, весь визуальный мусор, к которому еще не привык, все эти боковые панели, красные полоски итд, всплывающие подсказки, оставь только то что деуствительно нужно и удобно. Из плагинов можешь попробовать найти плагин для терминала, это по сути единственное, чего очень сильно не хватает студии.
Аноним 03/12/19 Втр 23:08:24 1537146405
>>1537002
Вот это сюр. Как же препод стебется над вами, просто пиздец.
Аноним 03/12/19 Втр 23:24:09 1537156406
>>1537146
Это не только над нами, человек 500 на потоке эту хуйню делают (
Аноним 04/12/19 Срд 02:45:39 1537293407
>>1537156
Уходи из этой шараги
Аноним 04/12/19 Срд 07:23:25 1537315408
Сисярпоблядь в треде.
Нужно ли изучать кресты с нуля, если до этого дрочил шарпы? Много ли схожего, или это два совсем разных языка?
Аноним 04/12/19 Срд 08:30:14 1537318409
>>1537315
>? Много ли схожего,
Мне кажется да, если не лезть в дебри.
т. прыгал с крестов на шарп
Аноним 04/12/19 Срд 08:38:14 1537320410
>>1537318
Ручная память (по большей части лечится RAII, но книги за 567 год, по которым все советуют учиться, об этом нихуя не знают), без статик анализатора (или RAII на любой пук) можно сразу сказать, что код работать не будет, если у тебя больше сотни строк в проге. В остальном современные кресты мало отличаются, учи сразу 17 или 20 фишки.
Аноним 04/12/19 Срд 08:39:15 1537321411
>>1537318
>если не лезть в дебри.
Это насколько? На уровне синтаксиса и простейших функций?
Аноним 04/12/19 Срд 08:42:17 1537323412
>>1537320
А что по стандартной либе и фреймворкам/другим библиотекам? Дикий дроч, или, разобравшись, становится более-менее легко?
Аноним 04/12/19 Срд 09:03:59 1537325413
>>1537323
Разобравшись, становится понятно. Но не легко.
Аноним 04/12/19 Срд 09:19:34 1537328414
>>1537321
шаблоны и вот это вот все
>>1537323
>фреймворкам/другим библиотекам
ну кют это что то типа дот нета по фичам, куча инфы и примеров, асло qml после xaml очень приятен и легок пока тебе сложные скрипты не понадобятся (жс)
Аноним 04/12/19 Срд 09:40:46 1537337415
>>1537293
Куда, в топ вузы меня не возьмут, а вышка нужна, я хочу в Канаду потом уехать.
Аноним 04/12/19 Срд 11:14:47 1537359416
>>1537315
Все самое интересное в коде с++ происходит "между строк", поэтому знать всякие мелочи критически важно.
>Много ли схожего
Тебе-то как раз должны быть важны не сходства, а точное понимание различий.

>с нуля
Цена вопроса околонулевая.
Лучше начать с нуля. Если для тебя что-то не окажется новым, то чтение и не займет много времени.
А если времени потратишь много, значит оно тебе было необходимо.
Аноним 04/12/19 Срд 11:42:25 1537378417
>>1537002
Пчел, есть сайты куда ты копипастишь код, и он сам рисует схему.
Аноним 04/12/19 Срд 12:32:26 1537399418
>>1537337
>, я хочу в Канаду
Кто тебе не дает? Хуесосы везде в почете.
Аноним 04/12/19 Срд 13:06:14 1537415419
Аноним 04/12/19 Срд 13:21:45 1537423420
Кто-то знает какие-нибудь сайты где шерят коды на С++? Ну типа где можно найти любительские коды на любую тематику
Аноним 04/12/19 Срд 13:42:18 1537445421
>>1537423
github.com - хороший сайт, жаль, что не популярен.
Аноним 04/12/19 Срд 14:08:19 1537471422
>>1537399
Ну сейчас я там никому не нужен
Аноним 04/12/19 Срд 14:29:02 1537485423
Можно очевидным образом подменить malloc/free.
А можно как-либо подменить delete/new не для отдельного класса через перегрузка - а вообще во всех случаях? Хочу сравнить стандартный менеджер со своим. Я погуглил, но по запросам перегрузки delete/new идут только их перегрузки для отдельного класса - но это и так очевидным образом делается. Ткните пальцем какой запрос вбить, пожалуйста, если это вообще возможно.
Аноним 04/12/19 Срд 15:47:50 1537517424
Аноним 04/12/19 Срд 15:52:34 1537521425
>>1537485
Всё, нашёл кое-как. Кошмар, сколько там вариантов для старых/новых стандартов и потом ещё для aligned, noexcept и квадратными скобочками во всех комбинациях.

Кстати повторюсь ещё раз и соглашусь с мнением выше, что исключения не нужны. По умолчанию вообще всё должно быть noexcept, и только в каком-то очень редком случае, когда ты используешь исключения - только тогда нужно поставить какой-нибудь мерзкий спецификатор по типу _e_X_c_e_P_t_a_b_L_y_, чтобы смотреть на него больно было.

>>1537517
Мм, спасибо. Сам уже нашёл правда, но всего несколько минут назад. Глобальная перегрузка, брр.
Аноним 04/12/19 Срд 19:16:20 1537662426
>>1537521
а я, повторюсь, что исключения нужны как минимум потому что в языке существуют конструкторы и пользовательские перегрузки операторов


Аноним 04/12/19 Срд 19:18:20 1537665427
>>1537485
все что ты перечислил - плохие подходы к проблеме
в стандартной библиотеке есть механизм аллокаторов, через него и следует проворачивать такие вещи
точка

Аноним 04/12/19 Срд 19:23:53 1537669428
>>1537471
насколько я понимаю, квест по переезду в канаду тот еще:
типа чтобы получить визу и статус резидента, нужно набрать баллов
а баллы набираются
нужно высшее образование, и нужно конвертнуть диплом
нужен подтвержденный опыт работы, и потом нужно оформить документы подтверждающие его
нужно знать английский язык, причем это знание подтверждается тестированием ielts
нужно иметь на счете в банке 12к баксов, минимум, эта сумма тоже должна быть подтверждена
причем каждый этап требует пусть и не бумажной, но электронной волокиты, и обойдется минимум в 2к баксов

на самом то деле это нихуевый квест

и для чего все это нужно?

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

охуенно

ловушка для умных дураков, на самом то деле


Аноним 04/12/19 Срд 22:41:17 1537775429
image.png (41Кб, 1081x542)
1081x542
Хелп ми плиз
Аноним 04/12/19 Срд 23:13:49 1537809430
>>1537775
>unsigned
> <= 0
А ты не очень умный
Аноним 04/12/19 Срд 23:14:54 1537810431
Помогите с регулярками плиз
bool IsBigChar(std::string str)
{
std::cmatch result;
std::regex regular{"^[A-Z][a-z]"};

return std::regex_match(str.c_str(), result, regular);
}
По задумке оно должно возвращать тру, если 1 буква большая, а остальные любые латинские
Аноним 04/12/19 Срд 23:17:06 1537813432
>>1537775
Зачем вообще использовать unsigned для таких маленьких значениях?
Аноним 04/12/19 Срд 23:18:18 1537816433
Аноним 04/12/19 Срд 23:18:36 1537817434
>>1537775
Как сказал чел выше, глупо сранивать беззнаковое с нулем. У тебя скорее всего при вычитании числа, больше чем хранит переменная, число становится очень большим. Поэтому перед тем как вычитать добавь проверку
Аноним 04/12/19 Срд 23:21:38 1537821435
>>1537809
Я пытался в проверку. Сначала было без unsigned, но когда значение хп становилось меньше 0, то цикл не прекращался, а продолжался уже с минусовыми значениями
Аноним 04/12/19 Срд 23:22:05 1537822436
Аноним 04/12/19 Срд 23:23:31 1537824437
Аноним 04/12/19 Срд 23:39:02 1537833438
>>1537669
> нужно высшее образование
Изи. Просто взял и без задней мысли получил заочно бакалавра в шараге в родной мухосрани. Да и очно не так уж сложно отучиться, а если в нормальном вузе, то даже в удовольствие (МФТИ, например).
> и нужно конвертнуть диплом
Не нужно.
> нужен подтвержденный опыт работы, и потом нужно оформить документы подтверждающие его
3 года работаешь на какой-нибудь адекватной галере, которая устраивает тебя по ТК.
> нужно знать английский язык, причем это знание подтверждается тестированием ielts
В 2019 это не должно быть проблемой. Сдать экзамен не сложно, стоит не дорого.
> нужно иметь на счете в банке 12к баксов, минимум, эта сумма тоже должна быть подтверждена
Это вообще самое лёгкое в квесте.
> причем каждый этап требует пусть и не бумажной, но электронной волокиты, и обойдется минимум в 2к баксов
Откуда 2к-то? Переборщил.
> и для чего все это нужно?
> а чтобы переехать в ванкувер
Нахуй этот китайский оверпрайсед гадюшник не нужен. Едешь в Торонто, зарабатываешь нормальные деньги, получая отличный ворклайф бэланс, через несколько лет получаешь паспорт нормальной страны. А потом и в Швятые можно без задней мысли ехать, в Bay Area или Сиэтл на $250k+/год.
Аноним 05/12/19 Чтв 00:44:03 1537865439
Аноним 05/12/19 Чтв 02:12:52 1537892440
Аноним 05/12/19 Чтв 08:59:29 1537949441
>>1537892
>layered typing
Хорошее название для какого-нибудь варианта gradual typing.
Аноним 05/12/19 Чтв 13:12:18 1538138442
Аноним 05/12/19 Чтв 15:11:46 1538260443
image.png (16Кб, 490x213)
490x213
Аноны, помогите с юнит тестом для исключения, постоянно ловлю ошибку C2337 ExpectedException: атрибут не найден
Аноним 05/12/19 Чтв 20:49:15 1538505444
Почему я не могу в абстрактном классе создать виртуальную функцию, которая возвращает экземпляр типа этого класса? Хочу сделать интерфейс для нескольких классов, у которых будет функция, которая должна возвращать экземпляр этого же класса. В моем случае такое решение должно довольно красиво выглядить, но как это реализовать?
Аноним 05/12/19 Чтв 20:56:17 1538514445
>>1538505
Возвращать указатель?
Аноним 05/12/19 Чтв 21:07:11 1538525446
>>1538505
Точнее ситуация даже такая: есть несколько классов с одним методом, который по своей сути делает одно и то же, но те, кто использует этот метод, должны знать, что он возвращает экземпляр этого же класса.
Так вот думаю по-хорошему надо для них создать абстрактный класс и как-то указать, что у наследников есть такой вот функционал. И еще метод должен даже не экземпляр класса возвращать, а QStack с типом этого класса. Проблема в том, что если ты в абстрактном классе указываешь, что метод возвращает QStack<base>, но в наследнике надо, чтобы он возвращал QStack<derived>, то перезаписать он не может.
С указателями все работает, но со стеком было бы красивее конечно.
Аноним 05/12/19 Чтв 21:07:25 1538526447
>>1538505
У виртуальных методов тип (если это не указатель/ссылка на сам класс) изменить нельзя. Все дочерние методы будут возвращать экземпляр базового класса, крася твои трусишки в коричневый цвет
Аноним 05/12/19 Чтв 21:11:30 1538530448
>>1538525
Тут даже вопрос не в том, как сделать чтоб работало, а как лучше вообще идею выразить.
Аноним 05/12/19 Чтв 21:17:18 1538542449
>>1538530
Можно приводить типы к потомкам, например. Но возвращать разные типы в потомках не выйдет, ты ломаешь сигнатуру базового метода.
Аноним 05/12/19 Чтв 21:20:59 1538545450
>>1538525
Возвращать std::variant с нужными реализациями?
Аноним 05/12/19 Чтв 21:30:49 1538564451
Аноним 05/12/19 Чтв 21:42:27 1538582452
>>1538564
А зачем он в C++-треде, это же лисп.
Аноним 05/12/19 Чтв 22:17:18 1538626453
>>1538564
Сикп выбросили нахуй даже в том универе, в котором его придумали
Аноним 05/12/19 Чтв 22:38:01 1538682454
Метапрограммисты ИТТ имеются?
Дано:
enum class MyEnum : long
{
val1 = 2,
val2 = 3,
val3 = 4
};

Нужно:
std::tuple
<
std::integral_constant<long, 2>,
std::integral_constant<long, 3>,
std::integral_constant<long, 4>,
>

Про буст знаю, есть дрисня вроде mpl::range_c, но выходит слишком громоздко, есть mp11::iota, но там только с нуля отсчёт, fusion идёт нахуй вместе с hana
Аноним 05/12/19 Чтв 22:44:41 1538693455
>>1538682
реально сделать только если енумы идут подряд и известен первый и последний. Жди рефлексии.
Аноним 05/12/19 Чтв 22:53:45 1538716456
Кто может кинуть уроки по GNU readline?
Аноним 05/12/19 Чтв 22:55:18 1538719457
>>1538693
Значения в енамах идут подряд и известны начало и конец.
Аноним 05/12/19 Чтв 23:02:38 1538725458
Аноним 05/12/19 Чтв 23:32:07 1538745459
Какой самый точный тип данных с плавающей точкой?
Аноним 05/12/19 Чтв 23:44:10 1538760460
>>1538745
Дабл. Есть еще екстендед и квад точность по моему, но это уже екзотика. На самом деле все говно.

Если попробуешь это 64 бит
(0.1+0.2)+0.3 == 0.1+(0.2+0.3)
результат будет false

Если возмешь флоат 32 бит
(0.1f+0.2f)+0.3f == 0.1f+(0.2f+0.3f)
результат будет true, лол
Аноним 06/12/19 Птн 00:07:30 1538777461
>>1538745
__float128, функции к нему в quadmath.h - 30 с хреном знаков после запятой. Но он в раз в двадцать медленнее (тому что программный и не имеет аппаратной поддержки), чем десятибайтовый long double, который работает всего на 10-20% медленнее, чем обычный восьмибайтовый double.
Аноним 06/12/19 Птн 00:17:05 1538780462
>>1538745
Массив байтов и несколько функция для длинной арифметики. Но это обычно не плавающая точка.
Аноним 06/12/19 Птн 00:24:15 1538781463
frog.png (71Кб, 1457x913)
1457x913
>>1538719
Лень было писать чисто, но вроде все понятно
Аноним 06/12/19 Птн 00:24:59 1538782464
>>1538781
а, я там наебался, забыл последний элемент. Это в Make_integer_sequence + 1 надо добавить
Аноним 06/12/19 Птн 00:34:53 1538789465
Аноним 06/12/19 Птн 00:56:20 1538796466
>>1538781
Хуй пойми как это работает. Какую литературу читать?

мимо сишник
Аноним 06/12/19 Птн 00:57:41 1538797467
Аноним 06/12/19 Птн 01:00:55 1538799468
>>1538797
По видосикам на ютубе научился? Я это 2 раза смотрел уже, не въехал, без удобной отладки не получается полностью понять, в какой вид шаблон разворачивается. Ты как боролся с этим?
Аноним 06/12/19 Птн 01:01:59 1538800469
>>1538799
Потратил больше времени, наверное. Для несложных тимплитов есть https://cppinsights.io - поймешь как работает, а дальше уже сложные сможешь в голове писать. По кр. мере у меня получается.
Аноним 06/12/19 Птн 01:06:20 1538802470
Аноним 06/12/19 Птн 01:11:55 1538804471
>>1538800
Ты прав, видимо нужно больше практиковаться, спасибо.
Аноним 06/12/19 Птн 01:56:16 1538816472
Помогите алгоритм запилить, чет я опух уже.

На шахматной доске для заданной клетки построить диагонали координаты i, j клеток диагонали пушатся в конейнер, проходящие через эту клетку.

inb4: Не лаба. Задачка из книжки. Я-то наговнякал решение, но как-то много if получается для такой простой задачи.
Аноним 06/12/19 Птн 02:23:51 1538827473
>>1538816
много ифов - это нормально для нюфань. А задачу из твоего описания я не понял
Аноним 06/12/19 Птн 02:42:53 1538830474
>>1538816
Я не знаю как словами описать, вот три немного разных по смыслу функции: https://ideone.com/qoDiG3
>как-то много if получается
Во втором (m_2) варианте нет ифов, но там цикл очень угрёбищный, хуже него только цветовая схема в моей ide.


Очень нравится писать короткие программы на одну функцию - целыми днями бы их писал. А то эта занудная фигня со структурами и шаблонами, брр.
Аноним 06/12/19 Птн 05:54:50 1538861475
>>1538745
Какая у тебя задача, что не хватает флоата? Я сильно сомневаюсь что тебе даже даблы нужны, не говоря уже о больших типах из математических библиотек. Ну и да, нельзя просто взять и использовать их, ибо они в двоичной базе и многие десятичные значения не могут быть точно представлены, надо обвязать дополнительной логикой. Вот читай классику https://randomascii.wordpress.com/2012/02/25/comparing-floating-point-numbers-2012-edition/ и всё остальное у него под тегом floating point
Аноним 06/12/19 Птн 07:40:47 1538871476
14630627843840.webm (760Кб, 640x480, 00:00:02)
640x480
>>1538830
Оу, аж три решения. Чаю тебе!
Аноним 06/12/19 Птн 11:46:45 1538990477
>>1538745
все очень сильно зависит от задачи
к примеру, иногда лучше вообще использовать библиотеки (или самим писать) реализующие арифметику рациональных чисел, тк они вообще не теряют точность
такие дела

Аноним 06/12/19 Птн 12:14:14 1539002478
>>1538682
тебе же все равно в компайл-тайм надо ))
тупо сгенерируюй и множество и тапл, тем же макросом ))


Аноним 06/12/19 Птн 13:02:51 1539047479
>>1539002
Чем макрос отличался бы от метафункции? Если что, енам там на пару сотен элементов. Препроцессор буста тоже идёт нахуй.
Аноним 06/12/19 Птн 13:07:14 1539057480
>>1538990
>они вообще не теряют точность
В том-то и дело. Когда делаешь какие-нибудь длинные вычисления над числом, типа деления/перемножения в цикле, оно заботливо сохранит все сомножители. Ну сократит парочку, конечно, но рост числителя и знаменателя потенциально неограничен.

алсо
>арифметику рациональных чисел
sqrt(2)

В общем, зависит от задачи: для расчета зарплаты с умножением на НДС подходит, для трассировки лучей - нет.
Аноним 06/12/19 Птн 17:21:11 1539387481
А можно мне тоже книжку с задачками, чтобы я опух? Можно со сложной математикой и геометрией, главное задачи не навязывали определённую внутреннюю структуру по типу, сделать то-то-то с использованием дерева.
Я погуглил, всё унылое на первый взгляд.
Аноним 06/12/19 Птн 17:26:33 1539396482
Аноним 06/12/19 Птн 18:26:57 1539463483
>>1539396
слишком много математики там имхо
чтобы там набить много задач, приходится осваивать тот матаппарат, который тебе не пригодится
чисто как развлечение сойдет, кому нра математические задачки
Аноним 06/12/19 Птн 18:28:07 1539464484
>>1539387
попробуй лучше реализовать алгоритмы, которые делают в современной крипте..
там много всего интересного выкатывают буквально каждый месяц..

Аноним 06/12/19 Птн 18:36:13 1539468485
>>1539387
попробуй написать хуевую текстовую консольную игру. Это гораздо полезнее, чем задачки.
Аноним 06/12/19 Птн 18:54:36 1539489486
>>1539396
Ту, вроде ничего. Но очень много с виду глупых.

>>1539468
А в чём суть? Не очень представляю что такое текстовая игра, полистал описание - не понимаю что они имеют ввиду и в чём там элемент игры.

>>1539464
>в современной крипте..
Вот это уж точно про "приходится осваивать тот матаппарат, который тебе не пригодится".
Аноним 06/12/19 Птн 19:02:56 1539500487
>>1539489
Посмотри текстовые квесты, к примеру. Там показывают описание ситуации и насколько вариантов выбора, от которых в дальнейшем что-то зависит.

мимо
Аноним 06/12/19 Птн 19:04:55 1539501488
>>1539489
Сингллеерный MUD (да, знаю что тавтология) - потом сделай его мультиплеерным и тд. Это реальная задача, в которой надо будет думать.
Аноним 06/12/19 Птн 19:07:42 1539503489
Аноним 06/12/19 Птн 19:14:36 1539510490
>>1538861
С одноклассником на перемене искали такую, пару натуральных чисел, что при деление одного на другое получалось число пи приближенное. У меня в какой то момент перестали находиться новые числа. Как я понял из за того что точности не хватает
Аноним 06/12/19 Птн 19:35:53 1539538491
>>1539510

Мне тут один анон доказывал, что так низя передавать массив, но слился так и не объяснив почему. Цикл вечный, это не важно.

void MakeAnswerToAntuan( Cls_Anonymous &SomeAnon )
{
whlie( SomeAnon .IQ < 10 )
{
cout << " Пшов нахуй" << endl;
}
}
Аноним 06/12/19 Птн 19:39:43 1539540492
Может кто доступно пояснить зачем мне использовать GNU Readline в c++ если у меня есть стандартный ввод-вывод?
Аноним 06/12/19 Птн 19:40:28 1539541493
Аноним 06/12/19 Птн 19:40:29 1539542494
>>1539540
А зачем ты его используешь?
Аноним 06/12/19 Птн 19:45:20 1539548495
Объясните, нахуя нужен CLR тип проектов.
Аноним 06/12/19 Птн 19:58:53 1539569496
Есть вопрос по libpcap.
Аноним 06/12/19 Птн 20:00:01 1539571497
>>1539548
Чистый проект, всё прописываешь с нуля же
Аноним 06/12/19 Птн 20:14:56 1539577498
>>1539569
могу провести консультации, скайп, телеграмм
яндекс деньги либо прямой перевод на карточку сбербанк
1500к в час
устраивает?


Аноним 06/12/19 Птн 20:16:56 1539579499
>>1539577
Не, просто скажи, как вызвать функцию pcap_open_offline для файла, который лежит не в текущей папке?
Аноним 06/12/19 Птн 20:18:31 1539580500
>>1539579
Прописать абсолютный путь до файла?
Мимопроходил-только-прототип-функции-видел-кун
Аноним 06/12/19 Птн 20:18:43 1539581501
>>1539540
readline это такой пепелац для организации cui, те для организации взаимодействия твоей проги с человеком, а не в качестве конвеера с другими прогами (если примитивно говорить)
если бы не анальная лицензия, то он бы поактивней использовался в проектах, а так когда нужно пилят свои поделия

Аноним 06/12/19 Птн 20:19:37 1539582502
>>1539579
:P
давай сам, копай, студентик
Аноним 06/12/19 Птн 20:20:29 1539583503
>>1539580
Хуй там. По крайней мере на винде.
Аноним 06/12/19 Птн 20:22:06 1539587504
>>1539583
Да не, там именно так и надо, по другому это уже магия какая-то
Аноним 06/12/19 Птн 20:24:48 1539589505
>>1539587
Да все так, просто на винде разделитель пути в другую сторону. Хосспаде, ну и срань.
Аноним 06/12/19 Птн 20:25:04 1539590506
>>1539538
"настоящий" массив можно передавать по ссылке, это да
но нужно понимать что у него будет фиксированная размерность, а это неудобно в большинстве случаев
тем более, если это с++, то у тебя вместо этого можно передавать константный вектор, можно передавать std::array, а с 20го стандарта еще и появится вещь, похожая на string_view но для массивов и векторов

Аноним 06/12/19 Птн 20:25:04 1539591507
>>1539571
CLR не значит clear, а Common Language Runtime.
Аноним 06/12/19 Птн 20:27:36 1539592508
>>1539590


ШТО?

У меня там в классе есть динамический массив, который есть указатель на блок памяти. Что же это получается, по ссылке на класс с ним он по старой и доброй традиции будет передавать только первый элемент?
Аноним 06/12/19 Птн 20:30:58 1539594509
>>1539548
Очевидно, чтобы писать код, гвоздями прибитый к винде.
Аноним 06/12/19 Птн 20:31:43 1539595510
Аноним 06/12/19 Птн 20:39:17 1539598511
>>1539594
Ну так и win32 проект прибит гвоздями к ней, в чем разница-то? Я что-то почитал про управляемую кучу, но на практике не очень понимаю.
>>1539595
Не знаю, наверное ты прав.
>Среда CLR является реализацией спецификации CLI
Аноним 06/12/19 Птн 20:40:01 1539599512
image.png (11Кб, 672x344)
672x344
>>1539579
Я конечно не специалист, но попробуй функцию SetCurrentDirectory что ли, если оно такое отбитое.

>>1539589
>в другую сторону
Что? Там в обе стороны можно писать. Можно даже чередовать :3
Аноним 06/12/19 Птн 20:58:40 1539610513
>>1539599
>Можно даже чередовать :3

Можно, но ему не нравится, когда \
Аноним 06/12/19 Птн 21:03:45 1539613514
>>1539599
Хуйца соснешь? Нельзя.
Аноним 06/12/19 Птн 21:14:37 1539623515
>>1539613
Угу. Но это странно, во всех нормальных либах работает.
Аноним 06/12/19 Птн 21:46:16 1539666516
Как поделить число не нацело?
Аноним 06/12/19 Птн 21:52:37 1539671517
Аноним 06/12/19 Птн 21:54:40 1539678518
Аноним 06/12/19 Птн 21:55:36 1539679519
>>1539678
А, я наоборот прочитал "нацело".
Аноним 06/12/19 Птн 22:05:16 1539689520
>>1539671
Ебать, что за брейнфак? Лучше так: static_cast<double>(x) / y
Аноним 07/12/19 Суб 02:44:25 1539832521
>>1539548
По идее, чтобы писать на крестах без отстрела ног. В MS этого достигли отстрелом всего, кроме ног
Аноним 08/12/19 Вск 01:23:01 1540637522
>>1538797
Ахуеть не встать, спасибо анон, продолжу читать Александреску
Аноним 08/12/19 Вск 01:46:29 1540654523
>>1540637
Александреску не очень релевантен, если у тебя есть С++17. Но как хобби чтиво для разрыва мозга - ок.
Аноним 08/12/19 Вск 11:39:35 1540766524
Есть солюшен, в нем несколько проектов. Как правильно пошарить код между проектами?
Аноним 08/12/19 Вск 12:50:27 1540801525
>>1540766
Добавь в References проекта другие проекты. Разумеется, они должны быть DLL, static lib или utility. В первом случае ещё нужно пару макросов написать для экспорта символов. (Можешь создать новый проект, там студия уже сгенерирует всё, что нужно - оттуда можешь брать)
Аноним 08/12/19 Вск 12:59:29 1540805526
image.png (48Кб, 450x351)
450x351
Есть у кого-то Mastering Cmake? Нихуя нету в интернете, даже в доках вк поискал
Аноним 08/12/19 Вск 14:31:57 1540881527
>>1540801
Делать либу ради нескольких вспомогательных функций, которые никак не связаны между собой? А попроще как?
Аноним 08/12/19 Вск 14:33:26 1540882528
Аноним 08/12/19 Вск 16:07:35 1540988529
Аноним 08/12/19 Вск 16:48:28 1541005530
Подскажите вектор который ниже какого-то лимита выделяется на стеке, выше лимита - в куче. Короче нужен динамический массив, чтобы при этом не дрочить лишний раз кучу.
Аноним 08/12/19 Вск 16:51:12 1541007531
>>1541005
>который ниже какого-то лимита выделяется на стеке, выше лимита - в куче. Короче нужен динамический массив, чтобы при этом не дрочить лишний раз кучу.
std::string
Аноним 08/12/19 Вск 17:12:37 1541023532
А зачем постоянно перекатывать тред? Комменты все равно доходят до лимита и удаляются
Аноним 08/12/19 Вск 18:03:51 1541103533
>>1541023
нет, посты удаляются только в закрепленных тредах. а это простой тред, который может утонуть(исчезнуть) если упадет на дно доски
Аноним 08/12/19 Вск 18:09:37 1541108534
А какие есть способы спрятать заголовочные файлы?
Чет у меня плодятся заголовки, которые нужны только в одном месте и все.
Аноним 08/12/19 Вск 18:57:44 1541167535
Как проверить покрытие тестов в бесплатной версии студии?
Аноним 08/12/19 Вск 19:30:41 1541226536
>>1541108
в спп же можно без заголовков писать вроде
Аноним 08/12/19 Вск 20:50:25 1541340537
Как вкурить бустовский b2 и сборку с ним? Не понимаю как добавить хэдеры.
Аноним 08/12/19 Вск 22:18:41 1541398538
>>1541340
Это мертворождённая технология, выбери что-нибудь другое
Аноним 08/12/19 Вск 22:26:30 1541426539
Аноним 08/12/19 Вск 22:46:12 1541449540
pointer.jpg (475Кб, 1262x1599)
1262x1599
>>1541426
"sudo" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Аноним 08/12/19 Вск 22:54:00 1541459541
>>1541426
Поставил древнюю версию, спасибо!
Аноним 08/12/19 Вск 22:56:56 1541460542
1377585590193.gif (2702Кб, 264x240)
264x240
>>1541459
>он не сидит на Debian Testing
Аноним 08/12/19 Вск 23:05:00 1541466543
>>1541460
ну, 2020 точно будет годом линукса на десктопе
Аноним 09/12/19 Пнд 18:29:25 1542074544
Дарова работяги, по плюсам квешен, color GetPixel сделать на конкретное окно по hWnd?
Аноним 09/12/19 Пнд 21:26:24 1542205545
Перекат пилите.
Аноним 09/12/19 Пнд 21:33:24 1542213546
https://www.youtube.com/watch?v=w7gIClKZ85s

Бьерн страуструп говорит, что образование и опыт в программировании не важны. Нужно ПРОСТО брать и писать код. Все.
Аноним 09/12/19 Пнд 21:49:58 1542232547
>>1542213
еще бы он так не говорил, кто его книжки то покупать будет?
Аноним 09/12/19 Пнд 22:25:19 1542289548
>>1542213
Ну а как иначе научиться?
Аноним 10/12/19 Втр 00:15:12 1542379549
>>1542213
>Бьерн страуструп говорит, что образование и опыт в программировании не важны.
В результате получился си плас плас.
Аноним 10/12/19 Втр 00:59:46 1542412550
image.png (2Кб, 162x196)
162x196
>>1542074
Через bitblt совершенно точно можно скопировать кусок чужого окна, и соответственно один пиксель тоже. Если тебе нужно считать больше одного пикселя - копируй через bitblt в буфер - это очень быстрая функция и не нужно возится с windows-структурами после неё, у тебя тупой буфер в виде одного массива останется после извлечения. И это вопрос по winapi же, а не по плюсам.
И вот ещё функция. GetPixel принимает hdc же, да? Только потом ReleaseDC не забудь вызвать, а то оно с ума сойдёт через некоторое время.
Аноним 10/12/19 Втр 02:38:30 1542494551
>>1542213
так у тебя ОПЫТ появится если ты будешь ПРОСТО писать.
Аноним 10/12/19 Втр 03:30:51 1542507552
>>1542494
Так прошлый опыт не важен. Каждый проект пишется с чистым разумом с чистого листа!
Аноним 10/12/19 Втр 09:56:18 1542557553
>>1542507
важен как не важен
даже книжка есть паттерны
программирования
у нубасов никаких наработок нет
Аноним 10/12/19 Втр 14:27:03 1542750554
Недавно сдавал курасач, рейтаните насколько наговнокодил, кому не лень. Boost сериализацию как-то через жопу сделал, но работало.
https://github.com/AI-Decay/Coursework
Аноним 10/12/19 Втр 14:34:03 1542751555
1.png (99Кб, 816x594)
816x594
Мне кажется, или тут какая-то нерабочая хуйня написана?
Аноним 10/12/19 Втр 14:42:28 1542753556
>>1542751
Да нет, с точки зрения логики все норм

А вот за перенос s=с; на новую строку/невыделение тела if-блока скобками я бы на бутылку посадил
Аноним 10/12/19 Втр 14:43:42 1542754557
>>1542751
Оно робiт, только отступы криго расставлены. По факту в тело for входит только s = c;
Дальнейший код в цикл не входит.
Аноним 10/12/19 Втр 14:47:15 1542757558
>>1542753
Во-первых \0 затрет последний символ, не? Надо сначала индекс i прибавить, а потом туда нулевой символ пихать, правильно? Алсо массив будет УЖЕ создан в main и размер в памяти будет определен с количеством элементов, i будет возвращать lim, т.к. "пустые" символы будут с мусором из памяти, разве нет?
>>1542754
Ну так и надо, нулевой символ один нужен в конце, а не цикле.
Аноним 10/12/19 Втр 14:49:21 1542758559
>>1542750
>setlocale(LC_ALL, "Ukrainian");

Дальше не читал
Аноним 10/12/19 Втр 14:51:44 1542760560
>>1542757
>Во-первых \0 затрет последний символ, не? Надо сначала индекс i прибавить
Нет, перед выходом из цикла сработает i++ из заголовка for
Аноним 10/12/19 Втр 14:53:14 1542762561
>>1542757
Прочитай задание еще несколько раз, и заодно загляни на страницы, где написано как работает for. А лучше выкинь нахуй это говно, го к нам на раст, почпокаемся
Аноним 10/12/19 Втр 14:57:03 1542766562
>>1542760
Точнее i++ выполнится перед последней проверкой условия
Аноним 10/12/19 Втр 15:12:55 1542773563
>>1542760
Теперь понял, но возник новый вопрос. Почему при объявлении счетчика внутри круглых скобок for область видимости ограничена, как будто это внутри фигурных скобок?
Аноним 10/12/19 Втр 15:15:55 1542775564
>>1542762
пошел нахуй педераст
Аноним 10/12/19 Втр 15:19:17 1542777565
>>1542773
Вернее я нихуя не понял, если я ввел например 2 символа, на i=3 цикл остановился, в этот индекс я записал нулевой символ, почему к счетчику все равно надо прибавлять единицу? Тогда 4 будет по такой логике.
Аноним 10/12/19 Втр 15:28:32 1542785566
>>1542777
А, все, индексация с нуля ведь идет, забыл совсем об этом.
Но вот про область видимости у параметров for это что-то новое для меня.
Аноним 10/12/19 Втр 16:02:49 1542812567
>>1541005
LLVM's SmallVector
boost :: container :: small_vector

Аноним 10/12/19 Втр 16:27:36 1542829568
>>1541005
std::pmr::vector с пулом на стеке.
Аноним 10/12/19 Втр 16:31:39 1542830569

Аноним 10/12/19 Втр 16:40:27 1542838570
>>1536386
> Either[T, E]
Что это? Гугл молчит.
Аноним 10/12/19 Втр 16:45:09 1542839571
>>1542773
>Почему ... область видимости ограничена
Раньше было лучше в си не допускались объявления в заголовке for. А Страуструп запилил эту фичу как раз для того, чтобы не засиралась внешняя область видимости.
Аноним 10/12/19 Втр 16:47:50 1542842572
>>1542839
Спасибо, а еще где эта фича проявляется?
Аноним 10/12/19 Втр 16:58:37 1542855573
>>1542758
Что не так? Тебя украинский смутил?
Аноним 10/12/19 Втр 17:22:44 1542872574
>>1542842
в условии if тоже можно
Аноним 10/12/19 Втр 17:41:53 1542885575
Безымянный.png (121Кб, 816x682)
816x682
Нет, ну вот как по книгам с ошибками/опечатками разбираться в программировании?
Аноним 10/12/19 Втр 17:45:59 1542887576
>>1542885
Погромирование начинается с англюсика.
Аноним 10/12/19 Втр 18:18:53 1542905577
Аноним 10/12/19 Втр 18:42:28 1542926578
>>1542905
А как готовить? Допустим, хочу обработать ошибку в конструкторе класса, как реализовать такое с этим вариантом?
Аноним 10/12/19 Втр 19:05:25 1542942579
>>1542926
Никак, лол. А в каждом методе делать проверку, что значение существует, и если нет, возвращать пустое значение. Привет от сишки и Go с его if err != nil.
Аноним 10/12/19 Втр 19:12:49 1542947580
>>1542926
Я не понял, у тебя ошибка при создании объекта? Если так, то это тебе ничем не поможет. Твои варианты - это а) кинуть исключение, б) переписать класс так, чтобы у него появилось "невалидное" состояние, типа bool m_isInitialized; и дальше что-то делать с этой информацией, в) переписать код так, чтобы класс не создавался если не выполняется какое-то условие, которое раньше было в конструкторе, г) создать make_* функцию, которая инкапсулирует пункт в
Обычно используют второй вариант, чтобы лишний раз исключения не бросать.

Если у тебя просто вызывается какой-то код, который может выполняться с ошибкой, то пишешь что-то вроде

std::variant<MyType, ErrorCode> LoadMyType()
{
...
if (!opened)
return ErrorCode::MyError;
...
return MyType(smth);
}

auto res = LoadMyType();
Дальше много вариантов развития событий: писать std::visit для типов - громоздко
или
auto const ★ myObj = std::get_if<MyType>(&red);
if(myObj)...
или
if (res.which() == 0)
...
Аноним 10/12/19 Втр 19:42:52 1542987581
image.png (58Кб, 623x577)
623x577
image.png (64Кб, 710x728)
710x728
image.png (70Кб, 529x871)
529x871
все правильно делаю? никто меня не обоссыт?
Аноним 10/12/19 Втр 19:55:45 1542994582
Аноним 10/12/19 Втр 20:04:30 1543009583
>>1542994
не хочу говнофреймворки, или ты не про ето?
Аноним 10/12/19 Втр 20:12:18 1543016584
>>1543009
Я про то, что использовать виндовс х смысла нет, давно появились намного более удобные библиотеки для создания контекста, к тому же кроссплатформенные.
А жлБегин и прочее - это из древнего стандарта опенжл. Сейчас принято использовать VAO/VBO (опенжл 3.3+). Учить их, правда, сложнее.
Аноним 10/12/19 Втр 20:24:29 1543030585
>>1542750
Пайдет. Будь я преподом, поставил бы А Ты же сам писал?. Конечно это если ты бы не слился на вопросах и доке курсача.
А теперь ИМХО:
1. Сохраняй исходники в UTF-8. Я установил екстеншн force utf8 no bom.
2. Проверка места, занято или нет, сравнением имени с пробелом - так себе решение (Почему пробел? Почему не просто пустая строка?). Лучше добавить метод bool Place::isOccupied() const.
3. Какой-то мутный метод void Railcar::CreatePlase(), вот нахуя он?еще и с опечаткой. Сразу в конструкторе инить вектор нужным числом. Кстати в таком случае поле CountPlace не нужно, так как оно дублирует информацию из вектора. Его можно заюзать как счетчик реально занятых мест, и быстро определять есть ли в вагоне свободные места. Ну, это тебе наверно не надо.
4. Поработай над передачей аргументов. Некоторые лучше было бы передать как const&. А в некоторых местах, например, сеттеры, где передача по значению, не хватает std::move.
5. Тоже с геттерами - самим методам не хватает константности, и, если геттер константен, незачем возвращать копию поля класса, можно const&
6. main можно было бы поразбивать на ф-и.
7. Парсинг юзерского ввода пролистнул, но там тоже есть что улучшить.
Аноним 10/12/19 Втр 21:01:51 1543082586
15750466977260.png (596Кб, 900x506)
900x506
>>1543030
Спасибо, писал сам, сдал на А, в следующий раз учту замечания. Больше всего проблем было с бустом, никогда раньше не пользовался, был рад что оно хоть работало.
Вообще реализация всего этого по заданию должна была быть на С#, но мне разрешили на плюсах написать
Аноним 10/12/19 Втр 21:37:58 1543126587
>>1542947
А передавать в конструктор какой-нибудь ErrorHandler не вариант? Или тот же std::variant<MyType, ErrorCode>?

> в) переписать код так, чтобы класс не создавался если не выполняется какое-то условие, которое раньше было в конструкторе, г) создать make_* функцию, которая инкапсулирует пункт

Можно пример? Благодарю за помощь.
Аноним 11/12/19 Срд 10:56:40 1543384588
>>1543126
> А передавать в конструктор какой-нибудь ErrorHandler не вариант? Или тот же std::variant<MyType, ErrorCode>?
У тебя всё равно объект создастся. Если в конструктор передавать out-параметр с ошибкой, получится неочевидное и нечитаемое месиво. Хотя можно передать этот ErrorHandler как in-параметр и заставить его бросать исключения, но это тоже такое себе.
> Можно пример?
У тебя конструктор наверняка выглядит как-то так
MyClass(...)
{
...
if(uslovie)
{
std::cout << "pizdec\n";
}
}
Замени вот это на
std::variant<MyClass, ErrorCode> MakeMyClass(...)
{
...
if (!uslovie)
return ErrorCode::pizdec;
...
return MyClass(...);
}
Можно без variant, с optional

Лучше приведи сам пример того, что сделать хочешь.
Аноним 11/12/19 Срд 12:43:30 1543413589
Как собрать программу, чтобы её не обнаруживал антивирус? Засунуть её в обфускатор? Только какой, после stunnix она вообще не собирается
Аноним 11/12/19 Срд 13:56:12 1543443590
>>1543413
нужен рабочий kernel mode rootkit, возможно нужна будет его адаптация для твоей "полезной нагрузки", нужен набор рабочих эксплойтов для доставки и разворачивания руткита..

Аноним 11/12/19 Срд 18:52:01 1543676591
>>1543413
Пиздуй в тред по инфобезу
или в /hack
11/12/19 Срд 23:12:52 1543905592
>>1543676
Здесь нет таких.

>>1543413
Никак. Современные антивирусы могут и обнаруживают абсолютно любую угрозу. Алсо, малварь запрещена правилами борды, алсо помни об УК РФ.

мимо майор
Аноним 12/12/19 Чтв 10:01:32 1544049593
>>1543905
У тебя что, ни разу антивирусы не ругались на хеллоу ворлд? А у многих они ругаются. И хуй с этим что-то сделаешь.
Аноним 12/12/19 Чтв 10:18:07 1544064594
>>1544049
Пиши авторам антивирусов, пусть твой сертификат к себе в базу добавляют.
Или заставляй пользователей отключать его, или в исключения добавлять.
А сначала на вирустотал загрузи
Аноним 12/12/19 Чтв 10:32:19 1544074595
>>1543905
> Никак. Современные антивирусы могут и обнаруживают абсолютно любую угрозу. Алсо, малварь запрещена правилами борды, алсо помни об УК РФ.
Как вы могли подумать об этом? Мне необходимо проверить на безопасность свой собственный пк. Интересно изучить, надёжно ли защищён мой компьютер, если его попробует взломать злоумышленник
>>1543443
> нужен рабочий kernel mode rootkit, возможно нужна будет его адаптация для твоей "полезной нагрузки", нужен набор рабочих эксплойтов для доставки и разворачивания руткита..
Зачем такие сложности? Разве не хватит обычного обфускатора + криптора?
>>1543676
> Пиздуй в тред по инфобезу
> или в /hack
Спасибо
Аноним 12/12/19 Чтв 11:24:08 1544103596
Я правильно понимаю, что в visual studio формочки-кнопочки делаются именно через вот этот .netовский диалект c++/cli который больше похож на c#?
12/12/19 Чтв 13:57:41 1544244597
>>1544103
Если ты хочешь шлепать формочки на С++ - то тебе в qt + опционально Verdigris, как замена MOC.

Студийные да - дотнет. Есть еще WinRT, но я не трогал его.

Аноним 12/12/19 Чтв 13:58:35 1544246598
>>1544244
случайно сажа приклеилась
Аноним 12/12/19 Чтв 14:39:09 1544283599
>>1544244
Да мне лаба1 нужно сделать, я понимаю, что qt сейчас обычно используют, но я на студии сижу, в ней я хоть немного что-то попробовал в отличии от остального.
Просто читаю книжку, а там эти указатели ^, массив по-другому объявляется и т.д.
Аноним 12/12/19 Чтв 15:26:46 1544345600
>>1544283
C++\CLI это совсем другой язык

Если тебе лаба1 на 2 кнопки - можешь попробовать через классическое Winapi, а-ля CreateWindow
Аноним 12/12/19 Чтв 15:50:01 1544377601
>>1544345
Да я выше писал(или это был прошлый тред), это должен быть интерфейс к бд. Я думал через технологию ado.net в VS как раз сделать как у Пахомова в книжке.
Аноним 12/12/19 Чтв 18:25:50 1544520602
>>1527126
с одной стороны как бы да. Но после перехода на кресты будешь писать немного иной код, нежели те, кто сразу писал на крестах. Хз хорошо это или плохо. Си более строг, нежели Си++
Аноним 12/12/19 Чтв 19:01:40 1544550603
>>1543384
Пишу обертку для винапи и хочу сохранить возможность получать код ошибки. Инициализации объекта происходит через YobaCreateSomthing и возвращает код ошибки, надо пробросить этот код через конструктор и все.
Аноним 12/12/19 Чтв 22:06:37 1544749604
image.png (14Кб, 172x184)
172x184
image.png (76Кб, 1198x385)
1198x385
>>1526322 (OP)
помогите мне разобраться с qt под андроид. Моя операционная система ubuntu 16. Мне нужно собрать приложение на qt под андроид. Вроде как нужно использовать clang для компиляции под андроид, потому что в новом ndk убрана поддержка gcc. Но qt не видит clang, хотя он установлен. Я пробовал искать решение в интернете, и на форуме qt есть тема со схожей с моей проблемой,
>https://forum.qt.io/topic/95104/qt-creator-android-clang
но там проблема не решена.
Но там есть сообщение
>https://forum.qt.io/topic/95104/qt-creator-android-clang/3
Я не понимаю, мне нужно перекомпиливать весь qt с помощью
clang чтобы мой проект на андроид компилился с помощью clang? Объясните мне пожалуйста, просто я не работал толком никогда с
sdk и ndk андроида.
Аноним 12/12/19 Чтв 23:08:24 1544810605
Какую самую интересную программу вы писали?
Аноним 12/12/19 Чтв 23:08:42 1544811606
Аноним 13/12/19 Птн 00:34:53 1544850607
>>1544810
Интерпретатор игрушечного языка программирования
Аноним 13/12/19 Птн 00:46:04 1544854608
>>1544850
Типичная лаба третьекурсника. Следующий.
Аноним 13/12/19 Птн 00:52:16 1544862609
>>1544854
Ты слишком хорошего мнения о большинстве вузов.
Аноним 13/12/19 Птн 00:59:02 1544865610
>>1544550
Код выглядит как
MyYoba(){
HRESULT res = YobaCreateSomething(&m_winYoba);
}
?
Попробуй
std::variant<MyYoba, HRESULT> MakeMyYoba()
{
WinYoba winYoba;
HRESULT res = YobaCreateSomething(&winYoba);
if (FAILED(res))
return res;
return MyYoba(winYoba);
}

а вообще, ты думаешь MS случайно два раза обосралась сначала с MFC, потом с ATL? Не благодарное это занятие, писать обёртки над винапи
Аноним 13/12/19 Птн 01:10:54 1544872611
Есть вопрос по qt, мб кто в темею Крч пишу курсач (в QT creator) надо завтра сдать попытался собрать, а оно без библиотек не запускается, ну это еще решаемо, но когда в собрал в релиз версии не считывает текст из форм вообще никак, мб поможет кто вроде не гуглится
Аноним 13/12/19 Птн 01:29:08 1544885612
>>1544872
Может ты вызовы важны какие-нибудь обернул в макросы типа assert, вот оно в релизе и выпилилось. Или в коде где-то UB и проявляется после включения оптимизаций.
Аноним 13/12/19 Птн 01:49:09 1544894613
>>1544885
Не работает:
QString name=ui->authorNameTextField->text();
ui->label_14->setText( name);
Работает:
QString name=ui->authorNameTextField->text();
ui->label_14->setText( "name");
Удалил старый проект, теперь и в дебаг сборке не работает
Аноним 13/12/19 Птн 02:04:07 1544898614
>>1544894
блять пиздец я дегенерат, крч я поставил в ебаном эдиторе при нажатии на кнопку "добавить" связь на очистку поля откуда взяты данные, и в режиме отладки значения считывались быстрее чем происходила очистка
Аноним 13/12/19 Птн 03:58:07 1544947615
>>1544865
Да, примерно так. А с уничтожением объекта как быть? Как оттуда результат вернуть? Мне нужно знать, что там очистилось все.
Аноним 13/12/19 Птн 08:15:43 1544977616
>>1544811
qt 5.11.3, ndk использую r17
Аноним 13/12/19 Птн 11:12:23 1545062617
Как сделать чтобы вместо ptr->ptr->ptr->var можно было писать var. Только без дополнительной переменной, чтобы было как using только с переменными. Такое возможно?
Аноним 13/12/19 Птн 12:17:49 1545119618
>>1545062
auto var ptr->ptr->ptr->var;
Ну очевидно же.
Аноним 13/12/19 Птн 12:18:32 1545120619
>>1545119
Просто иначе не получится, только с доп. переменной.
Да, в глаза долблюсь.
Аноним 13/12/19 Птн 12:24:47 1545124620
Аноним 13/12/19 Птн 12:33:22 1545136621
хелпаните, как через SendMessage послать массив общий для двух окон, изменилось в одном приложении -> через SendMessage и изменилось в другом, чет у меня по кд 0 0 приходит. я пытался передавать ссылку на массив, но чет тщетно
Аноним 13/12/19 Птн 12:49:14 1545154622
>>1544947
Я не спец в winapi, но разве такое вообще возможно? Скинь ссылку почитать.
И что предлагают делать в такой ситуации? Не очищать?
Аноним 13/12/19 Птн 12:50:15 1545156623
>>1545062
Коноплятор всё равно оптимизирует твою ссылку
Аноним 13/12/19 Птн 13:08:02 1545174624
>>1545156
> ссылку
Освободишь память - и пиздец ссылке.
Аноним 13/12/19 Птн 14:30:18 1545227625
>>1545062
Я пишу auto& =. Если посмотреть на godbolt, то куча разыменований даёт один в один такой же код, как и доступ через ссылку-синоним. Но если у тебя указатели поменяются разыменования продолжат работать, а ссылка - нет. Не представляю почему они аналог дельфийского with не выкатили.

>>1545136
Тебе нужен глобальный кусок памяти. Твой массив (и твои указатели) существует только в адресном пространстве твоей программы. Смотри VirtualAlloc, GlobalAlloc и иже с ними.
Вроде бы там можно выделять кусок памяти, и давать к нему доступ на чтение, на запись и на выполнение.
Аноним 13/12/19 Птн 14:51:02 1545271626
изображение.png (2Кб, 379x52)
379x52

Есть тут кто? Приём!

Я пытаюсь прибавлять double к double, но переменная почему-то при присвоении превращает число в нечто непонятное. В чём прблема?
Аноним 13/12/19 Птн 14:55:33 1545278627
Аноним 13/12/19 Птн 14:57:55 1545282628
Аноним 13/12/19 Птн 14:59:47 1545288629
>>1545282
Я почитал, я начал подозревать, что мне нужно явно указывать количество знаков после запятой для каждой переменной. Верно?
Аноним 13/12/19 Птн 15:07:16 1545307630
>>1545288
Нет, это невозможно. Тут где-то в другом должна быть ошибка.
Аноним 13/12/19 Птн 15:14:59 1545327631
изображение.png (17Кб, 640x419)
640x419
изображение.png (14Кб, 398x514)
398x514
>>1545307

На первой картинке вычисление времени выполнения блока кода, на второй простой подсчёт количества условных тактов и проверка таким образом на прохождение некоторого времени.
Аноним 13/12/19 Птн 15:15:34 1545329632
>>1545327
ElapsedTime вычисляется без ошибок
Аноним 13/12/19 Птн 15:21:53 1545335633
Почему вот это не работает
> QObject::connect(&cmd, SIGNAL(clicked()), &label, SLOT(setNum(34)));

Аноним 13/12/19 Птн 17:33:16 1545510634
Аноним 13/12/19 Птн 17:59:48 1545527635
>>1545174
Всему твоему паровозику тогда тоже пиздец.
Аноним 13/12/19 Птн 18:02:22 1545533636
>>1545335
Потому что почитай ещё раз вики.
Замени на лямбду
Аноним 13/12/19 Птн 18:11:50 1545548637
Пишу программу для поиска значений в памяти. Как мне искать разные типы? Вот есть какое нибудь число, которое нужно найти, причем ттп его я не знаю. Может int, может float, может double. Если с интом все более менее понятно, то как искать дробны? Float занимает 4 байта, а double 8. Как всякие cheat engine'ы ищут?
Аноним 13/12/19 Птн 18:14:34 1545554638
>>1545533
Что то не помогает
> QObject::connect(&cmd, SIGNAL(clicked()), &label, SLOT([](){setNum(4);}));
Аноним 13/12/19 Птн 18:15:39 1545557639
>>1545548
Для начала почитай как хранятся в памяти числа с плавающей запятой. Мантисса, характеристика и тд
Аноним 13/12/19 Птн 18:20:37 1545561640
>>1545557
Ну знак, порядок и мантисса. Но для разных типов же разное колличество бит под каждый раздел
Аноним 13/12/19 Птн 19:19:19 1545605641
>>1545548
В общем случае нельзя определить тип данных, не имея дополнительной инфы, это просто байты, которые могут быть чем угодно.
Аноним 13/12/19 Птн 22:19:36 1545706642
>>1545605
А как какой нибудь cheat engine ищет дробные? У меня возникла идея сначала искать мантиссу
Аноним 13/12/19 Птн 22:31:07 1545724643
>>1545706
Я ничего не знаю про cheat engine, но почти наверняка он может найти что-то только в исполняемых файлах или библиотеках, где формат жёстко задан. В произвольном же бинарном файле, который взялся невесть откуда, он вряд ли что-то найдёт.
Аноним 13/12/19 Птн 22:35:04 1545733644
2019-10-262-48-[...].png (242Кб, 537x521)
537x521
2019-12-1322-30[...].png (87Кб, 1029x847)
1029x847
2019-12-1322-32[...].png (19Кб, 823x271)
823x271
2019-12-1322-33[...].png (43Кб, 704x504)
704x504
сап прогеры, вопрос
меня интересует библиотека, которую я нашел на гитхабе, а именно https://github.com/whoshuu/cpr , которая позволяет делать post/get запросы.
Но я никак не могу понять как добавить эту библиотеку в среду. Т.е. кинул по пути, где другие библиотеки (пик 3), среда не выдает ошибок.
При попытке скомпилить линкер выдает ошибку, которая связана с библиотеками (пик 2).
Помогите плз, я реально не могу этот момент уловить второй день.
То что с гитхаба скачал - пик 4. Оттуда перебросил 2 папки - include и cpr.
ПАМАГИТЕ ПОЖААААЛУЙСТА
Аноним 13/12/19 Птн 22:52:59 1545753645
>>1545733
Ебан, пути к инклюдам\либам надо устанавливает в проекте, а не кидать в папку студии.
Аноним 13/12/19 Птн 22:54:27 1545755646
>>1545554
Да тебе уже ничего не поможет, сорри...
Аноним 13/12/19 Птн 23:01:26 1545765647
>>1545724
Я, честно говоря, тоже мало о нем знаю. Завтра чекну насчет дробных
Аноним 13/12/19 Птн 23:01:38 1545766648
>>1545753
СПАСИБО!!! Потещу завтра как выйдет
Я перекат с питона, где все за тебя делается
Т. е. я скачал библиотеку, мне нужно специально место для них и в каждом новом проекте я должен ссылаться на папку, где. h и .cpp файлы?
Я правда думал что кинул в кучу все либы и он сам потянет что нужно. Кстати lib это по сути просто пак заголовков и объявлений, да? А то с гита отдельно файлы не в формате либ.

Ещё вопросик:
Хочу запросом из интернета цеплять словарь, где слева именам соответствует имя переменной, а значением - значение переменной.
Т. е. был словарь например {"a" : 3}. Как создать переменные заранее известного типа с этими именами? Это же невозможно вобще, да?
(в пинотне просто locals().dict() и он словарь в переменные преобразует)
Аноним 14/12/19 Суб 00:15:39 1545839649
>>1545733
Ты что не видишь CMakeLists? Гугли как собирать библиотеки
Аноним 14/12/19 Суб 00:28:28 1545846650
>>1545766
>Я перекат с питона, где все за тебя делается
с какой целью?

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

> Как создать переменные заранее известного типа с этими именами?
это в принципе хуёвая практика в программировании, когда хуй знает что берется хуй знает откуда. то, как ты будешь получать значения из запроса, может очень сильно отличаться от библиотеки к библиотеке.
Аноним 14/12/19 Суб 00:44:40 1545858651
>>1545766
>Т. е. был словарь например {"a" : 3}. Как создать переменные заранее известного типа с этими именами?
Если ты питонист, то ты вроде как должен знать каким образом работает словарь.
Точно не скажу, но по идее там хеш-таблица со структурой, которая содержит информацию (структуру) о типе (int/не_int/ещё словарь) и содержит нужное значение или указатель на него.

Если ты хочешь сделать то же самое на крестах, то убьёшь большую часть производительности и сделаешь очень много рутины и велосипедов. И это будет не переменные, это будет обращение к хеш-таблице по индексу "a" - что собственно и делает за тебя питон.
Ну или придётся вникнуть в стандартную библиотеку, там вроде как есть std::variant для разных типов, который я никогда не использовал.
Тебе зачем такое? Если для питона это естественный инструмент, то для крестов - довольно-таки противоестественный.
Аноним 14/12/19 Суб 08:36:03 1545948652
>>1545755
Будь же ты человеком, поясни что я делаю не так.
Аноним 14/12/19 Суб 08:43:48 1545951653
>>1545948
> QObject::connect(&cmd, &QPushButton::clicked, [&](){label.setNum(45);});
Хотя если написать такое говно, то всё работает, но почему хуй его знает
Аноним 14/12/19 Суб 09:37:41 1545977654
image.png (89Кб, 835x871)
835x871
>>1545766
>Это же невозможно вобще, да?
вообще это возможно с препроцессором или с макросами. в свифте есть codable, 1 это генерируемый обвес к структуре, 2 это как выглядит структура для программиста.

скорее всего в сях есть такая же хуйня уже готовая, и вообще то свифт ебаное говно и хотелось бы воздержаться от его упоминания, просто я еще нуфаг в сях
Аноним 14/12/19 Суб 10:22:30 1545989655
>>1545839
>Ты что не видишь CMakeLists? Гугли как собирать библиотеки
Выжу, скачал CMake, охуел с того что там нет файла .exe, который можно открыть и собрать библиотеки. Крч непомерно сложно, правда. Совсем не юзер френдли

>>1545846
>>Я перекат с питона, где все за тебя делается
>с какой целью?
Задача была отображать оверлей поверх окна. На питоне безмерно костыльный метод, который еще и ресурсоемкий.

>>Хочу запросом из интернета цеплять словарь, где слева именам соответствует имя переменной, а значением - значение переменной.
>начни с того, что к тебе приходит не словарь, а ебучий текст, который ты должен распарсить еще.
там json слава богу, библиотеку для работы с ним тоже нашел, жаль не понял как установить. Коллекции/словари есть - думал будет изи

>это в принципе хуёвая практика в программировании, когда хуй знает что берется хуй знает откуда. то, как ты будешь получать значения из запроса, может очень сильно отличаться от библиотеки к библиотеке.
понятное дело, но есть просто список переменных, начальное значение которых есть на сайте. Ну кстати можно все переменные объявить, а потом значения подгрузить с сайта. Но в питоне было так просто целиком словарь преобразовать.

>>1545858
>Если ты питонист, то ты вроде как должен знать каким образом работает словарь.
Понял, звучит мудро на самом деле

>>1545977
сложно, свифт не видел никогда в жизни.

Аноним 14/12/19 Суб 11:05:54 1546004656
>>1545989
>сложно, свифт не видел никогда в жизни.
потому что нахуй не надо
Аноним 14/12/19 Суб 13:36:22 1546099657
>>1545951
Написал говно - не понимает, почему не работает.
Написал норм - назвал говном, не понимает, почему работает.
Почитай ты уже ебучую статью в кутишной вики про сигналы и слоты
И указатель захватывай по значению бля
Аноним 14/12/19 Суб 13:39:18 1546101658
>>1545989
> Выжу, скачал CMake, охуел с того что там нет файла .exe, который можно открыть и собрать библиотеки. Крч непомерно сложно, правда. Совсем не юзер френдли
Тебе надо было vcpkg скачать, дурашка
Аноним 14/12/19 Суб 15:34:00 1546232659
>>1545765
Лол. Он правда дробняе не ищет
Аноним 14/12/19 Суб 18:35:56 1546432660
Не могу понять как работать с графическим интерфейсом в qt. Размещаю кнопку, а в самом коде она нигде не появляется.
Аноним 14/12/19 Суб 18:38:48 1546436661
>>1546432
Как ты её блядь размещаешь тогда?
Научись писать интерфейс на крестах, а не перетягиванием виджетов на формочку. Забудь вообще о такой функциональности
Аноним 14/12/19 Суб 18:53:19 1546462662
>>1546436
> Научись писать интерфейс на крестах
С этим проблем нет. Но хочется быстро и наглядно накидать на формочку.
> Как ты её блядь размещаешь тогда?
Перетягиванием блядь. В контекстом меню кнопки можно перейти к слотам, но на этом всё. Самого объекта в коде нет
Аноним 14/12/19 Суб 18:54:35 1546470663
>>1546462
Он должен появиться как член ui. Если ты конесно файл сохранил
Аноним 14/12/19 Суб 19:06:28 1546487664
>>1545989
>>1545766
делай на питоне, кресты тебе не к чему
можно сделать standalone прогу на питоне, если у тебя есть в этом необходимость и все

Аноним 14/12/19 Суб 20:27:37 1546569665
>>1546462
То есть ты не представляешь себе, как собирается твой проект? Пиздец.
Аноним 14/12/19 Суб 21:17:52 1546602666
Пытаюсь распарсить html-страницу на плюсах inb4 долбоеб с помощью CURL и gumbo. Загрузить страницу получилось, только нужной информации в ее коде нет нужный <div> пуст, хотя в браузере нет. Ее скрипты что-ли догружают? Как тогда эти данные можно получить?
Аноним 14/12/19 Суб 22:13:55 1546653667
>>1546602
> Ее скрипты что-ли догружают?
This
> Как тогда эти данные можно получить?
Внезапно, запустив эти скрипты.

Поэтому современный веб такое говно.
Аноним 14/12/19 Суб 22:23:01 1546661668
Аноним 14/12/19 Суб 22:38:21 1546673669
>>1546653
>Внезапно, запустив эти скрипты
Сомневаюсь, но это можно как-то сделать на плюсах? Может библиотека там какая, хз

>>1546661
Загуглил селениум, не понял как он мне поможет. С парсингом проблем нет, дело в том что парсить нечего
Аноним 14/12/19 Суб 22:44:52 1546686670
>>1546673
> Сомневаюсь, но это можно как-то сделать на плюсах? Может библиотека там какая, хз
К сожалению, да. Гугли webkit, webengine и т.п.
Но тебе 100% не понравится, лучше скинь эту задачу на кого-нибудь другого
Аноним 15/12/19 Вск 00:28:56 1546833671
>>1546602
>пытаюсь распарсить html-страницу на плюсах

для страницы, что содержит сложный динамический контент есть 2 пути:

первый - использовать браузер
под виндой ie automation, там все просто, только надо шарить в com хоть чуть-чуть
под линуксом чуть сложнее - ты пишешь расширение браузера, которое будет работать с твоим сайтом, потом прогой запускаешь браузер в котором это расширение отработает открыв сайт, и выдерет тебе нужные данные, которые сбрости куда-нибудь, да хотя бы во временный файл в каком-нибудь формате, или еще как; а потом уже твоя прога возмет эти данные

второй путь - использовать библиотеки типа microsoft C++ REST SDK, смотреть какие запросы идут во время формирования динамического контента на сайте и формировать эти запросы ручками (а возможности этих библиотек помогут в этом), довольно гиморно, но это позволит делать проги которые не зависят от того установлен ли браузер в системе
другое дело, что если у сайта уже есть какой-нибудь официальный rest- или soap- бесплатный доступ, то проще воспользоваться им и получать все нужные данные официально

Аноним 15/12/19 Вск 00:34:24 1546840672
Аноним 15/12/19 Вск 00:53:51 1546867673
#pragma once на пальцах объясните пожалуйста использование.
Аноним 15/12/19 Вск 01:11:44 1546902674
>>1546867
Допустим, ты написал хедер, в котором есть несколько определений. Если ты захочешь использовать этот хедер при написании других хедеров, а затем несколько таких хедеров заинклудишь в одном файле, то одни и те же определения включатся несколько раз, на что компилятор ругнётся. Чтобы этого избежать, достаточно в начале хедера написать pragma once, и препроцессор будет проверять, включался этот файл уже или нет, и если включался, пропускать.
Также есть другой подход, называется include guards. Более переносимый.
Аноним 15/12/19 Вск 01:15:39 1546907675
>>1546902
А если какой-то стандартный хедер типа iostream(в нем есть эта директива?) в моем хедере нужен, в основном файле его потом не подключишь?
Аноним 15/12/19 Вск 01:37:32 1546922676
>>1546907
Подключишь, все библиотеки используют pragma once или include guards. Стандартная библиотека не исключение. По-другому просто невозможно написать хоть сколько-нибудь большой проект.
Из-за этого можно даже написать:
# include <iostream>
# include <iostream>
# include <iostream>

И это соберётся.
Аноним 15/12/19 Вск 01:57:32 1546954677
>>1546922
Ок, но используется это в целях экономии размера итогового файла, а не для разрешения каких-то конфликтов компиляции?
Аноним 15/12/19 Вск 02:05:36 1546969678
>>1546954
А, ты выше написал, что при повторении компилятор будет ругаться без этой директивы, я невнимательно прочел.
Вроде теперь понятно, спасибо.
Аноним 15/12/19 Вск 02:06:38 1546973679
>>1546954
Используется всё только для разрешения конфликтов. На размерах исходников никто не экономит, в этом нет смысла.
Аноним 15/12/19 Вск 13:51:24 1547198680
>>1546432
>а в самом коде она нигде не появляется.
Она появляется в генерируемом мок файле.
Обращаешься к ней в твоем классе окна как ui->кнопка_нейм
Аноним 15/12/19 Вск 14:03:10 1547208681
Аноним 15/12/19 Вск 21:39:02 1547670682
>>1526322 (OP)
```
InterfaceReg::InterfaceReg( InstantiateInterfaceFn fn, const char *pName ) : m_pName(pName)
{
m_CreateFn = fn;
m_pNext = s_pInterfaceRegs;
s_pInterfaceRegs = this;
}
```

вот это `: m_pName(pName)` что это такое?
Аноним 15/12/19 Вск 21:42:45 1547674683
>>1547670
Это, считай, `m_pName=pName;` в теле конструктора первой строчкой до остального кода. Можно туда же ещё дописать m_CreateFn(fn).
Аноним 15/12/19 Вск 21:45:58 1547677684
>>1547674
Спасибо за разъяснение. Я или не понимаю практического смысла такого написания, или просто говноед так написал...
Аноним 15/12/19 Вск 22:07:46 1547690685
point-to-pointe[...].jpg (10Кб, 880x308)
880x308
Зачем нужны все примитивные типы вроде int и float?
Можно же просто всё решать на уровне указателей.
Аноним 15/12/19 Вск 22:36:54 1547711686
>>1547677
https://ideone.com/SZDfbA
Вот этот код нельзя записать без этого угрёбищного синтаксиса с двоеточием. Идея в том, что если B наследуется от A, то объект A должен быть сконструирован строго до любого кода конструктора B. Написать A=124 там не получится.
>не понимаю практического смысла такого написания
Я тоже не понимаю, выглядит отвратительно, особенно когда там пунктов 5-6 после двоеточия и в скобках указать нужно не просто параметры, а какие-то выражения. Например, если в коде выше нужно не просто 124 указать - а получить число из файла и только потом передать его в конструктор A, то придётся всю процедуру получения числа из файла указывать в скобках после двоеточия. То есть придётся по сути написать дополнительную функцию, которая нужна только как вспомогательная для получения бедного числа из файла, чтобы вызов этой функции затолкать в скобку после двоеточия.
Объясняется это тем, что конструкторы имеют другой смысл, и если я хочу из конструктора B прокидывать значение получаемое во время конструктора A - то это должно быть не конструкторами, а функциями инициализации (обычными методами по типу void init(...), где B::init будет получать нужное значение и передавать его в A::init). Использовать конструкторы как предлагаю я не православно, якобы. Но это всё ещё можно сделать через placement new.
Аноним 15/12/19 Вск 22:52:19 1547719687
>>1547690
Предлагаешь делать на каждый чих new/delete? Дерзай. Только потом не удивляйся, почему перформанс упал до уровня питона.
Аноним 15/12/19 Вск 22:53:04 1547721688
у меня дано n количество точек на плоскости,мне надо вывести вершины такого шестиугольника,чтобы в нем содержалось максимальное количество точек. Я знаю как проверять точки на принадлежность,но как более оптимально построить шестиугольник
Аноним 15/12/19 Вск 22:57:45 1547729689
>>1547721
Наверняка связано с выпуклой оболочкой
Аноним 15/12/19 Вск 22:58:16 1547730690
>>1547721
Звучит как задача поиска выпуклой оболочки. Но там количество точек не учитывается, а у тебя должен быть именно шестиугольник.
Аноним 15/12/19 Вск 22:59:44 1547733691
>>1547730
выпуклый шестиугольник,причем наибольший
Аноним 15/12/19 Вск 23:02:57 1547739692
>>1547721
Не понял задачи.
Найти минимальные и максимальные значения x и y и построить шестиугольник, в который этот квадрат точно поместится, чтобы внутри него были все точки? Но это же бред какой-то, задача не может в этом заключаться. Может быть шестиугольник должен быть минимальной площади?
Или вершинами шестиугольника могут быть только точки из твоего списка? Это никак не следует из твоего описания.
Аноним 15/12/19 Вск 23:03:54 1547741693
>>1547739
вершинами шестиугольника могут быть только точки из списка
Аноним 15/12/19 Вск 23:18:15 1547756694
>>1547741
И судя по твоему описанию площадь должна быть максимальная.
Аноним 15/12/19 Вск 23:19:48 1547759695
>>1547756
нужно,чтобы в этот шестиугольник входило максимальное количество точек,которое мне дано
Аноним 16/12/19 Пнд 08:17:37 1547951696
>>1547741
если "выпуклых" точек будет 7, а не 6, то твой препод идет нахуй с формулировкой задачи.

если "максимальное количество точек" подразумевает все таки не вообще все точки, то модифицируешь Алгоритм Грэхема https://habr.com/ru/post/144921/ под свои нужды. ну просто находишь все возможные шестиугольники и выбираешь из них самый оптимальный)
Аноним 16/12/19 Пнд 12:04:24 1548090697
Аноним 16/12/19 Пнд 16:10:05 1548310698
221.jpg (29Кб, 796x629)
796x629
Screenshot2.png (48Кб, 800x623)
800x623
Делаю свою игру на Ditect2D как тестовый проект. У меня есть что-то вроде стрельбы (при нажатии на проблем возле спрайта создаются эллипсы, которые в моем случае круги и перемещаются в соответствующем направлении). Хочу добавить ограничение на минимальное время между выстрелами, потому что у меня получается если зажать пробел, то шары вылетают как линия. Как это лучше сделать?
Аноним 16/12/19 Пнд 16:25:45 1548315699
>>1547677
Так инициализируют константные члены, и члены без дефолтного конструктора.
А при эксепшене раскрутится стек только для уже созданных членов, при записи через = они сначала создадутся по умолчанию потом переназначатся.
Аноним 16/12/19 Пнд 16:42:57 1548327700
Аноны-кутешники, поясните дауну как работать с динамической памятью. Везде использовать смарты или подход "я убиваю деда, дед отца, а отец сына". Если смарты, то какие - стл или кутешные?
Аноним 16/12/19 Пнд 17:03:37 1548341701
Уже немножечко ажтрисет от того, что какой-нибудь setItem просто крашится, а не выбрасывает исключение пре неправильных данных. Полагаю, что это потому, что он сигналит, а дальше в определенном не мной слоте естественно исключения не пробрасываются к месту моего вызова. Что с этим делать?

>>1548327
Использую смарты там, где без их использования требовалось бы вызывать delete у сырого указателя.
Использую STL (с кастом к Qt типам при востребовании) там, где можно обойтись без Qt. Если же это например список заголовков таблицы, то храню его сразу в QStringList, потому что он используется только в одном месте при передаче Qt-методу, который принимает QStringList.
Аноним 16/12/19 Пнд 17:12:15 1548350702
Аноним 16/12/19 Пнд 17:38:27 1548370703
Почему вы не перекатываетесь?
Аноним 16/12/19 Пнд 17:42:53 1548374704
>>1548370
potomu chto stek ne perepolonilsya
Аноним 16/12/19 Пнд 18:05:15 1548389705
>>1548370
Потому что все ждут, когда кто-то перекатит. Возьми да перекати сам, если хочешь.
Аноним 16/12/19 Пнд 18:37:08 1548422706
>>1548310
Можно, конечно, внутри метода сделать какой-нибудь статик таймер, но не знаю, хорошо ли это.
Быдловариант: проверяй, нет ли в направлении выстрела на определенном расстоянии уже выпущенного снаряда.
Но оба варианта так себе, вроде бы.
Аноним 16/12/19 Пнд 19:11:30 1548465707
>>1548422
>проверяй, нет ли в направлении выстрела на определенном расстоянии уже выпущенного снаряда.
Вот это может и сделаю, звучит неплохо и довольно быстро
Аноним 16/12/19 Пнд 19:47:47 1548506708
>>1548370
Это 100-й тред, давайте его навсегда оставим
Аноним 16/12/19 Пнд 20:58:40 1548607709
image.png (11Кб, 827x237)
827x237
>>1548310
>Как это лучше сделать?
ух бля зря ты спросил, там очень сложная концепция для новичка, да и в общем то не нужная для говно-пет-проектов.

дело в том, что ФПС в "высокоразвитых" играх не константа. то есть ты не начинаешь быстрее бегать в майкрафте при 1000фпс, а в тяжелых играх на слабом железе у тебя даже при 20 фпс ну в теории возможно поиграть, это будет слайдшоу, но не замедленная съемка.

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

ведь если фпс будет скакать как ебанутый(предположим), то и пули будут вылетать не равномерно. я на самом деле не знаю как именно это делают грамотные разработчики игор, но можно предположить, что они тупо интерполируют. вот например как я это вижу: я нажимаю стрелять между кадрами, пуля помещается на условную архитектурную временную шкалу, в параметрах к пуле запоминается параметры дула именно во время нажатия кнопки, в следующий кадр я просто отрисовываю все пули на временной шкале с учетом прошедшего времени. если пуля столкнулась с чем то(наложилась на другой объект), я пытаюсь вычислить когда это произошло, то есть пулю надо отодвинуть немножко назад, так как она может наложиться на объект, и допустим вместо пули запустить анимацию маленького взрыва.

Аноним 16/12/19 Пнд 23:49:22 1548866710
>>1548310
Если скорострельность сильно ниже частоты кадров (у тебя же игровая механика к отрисовке привязана, верно, бака ты такая?), то просто напиши что-то вроде:
reload-=dt;
if (reload<=0 and probel){ vistrel(); reload+=0.2;}
Где dt - время между кадрами, 0.2 - время перезарядки, а vistrel создаёт новый спрайт-снаряд. Это будет не очень хорошо, но зато просто.

Если скорострельность сопоставима с частотой кадров (например, 20 выстрелов в секунду), то нужно анализировать время до перезарядки и время кадра. Например, если у тебя время кадра - 0.1, интервал между выстрелами 0.03, и на начало кадра до перезарядки осталось 0.02, то за этот кадр тебе нужно создать три снаряда. Тот, который создастся в момент 0.02 (и при этом нужно ещё посчитать, что он пролетит 0.08*v, где v-скорость), и ещё два в моменты 0.05 (пролетит 0.05v) и 0.08 (пролетит 0.02v). И на конец кадра время перезарядки будет уже 0.01.

Могу написать демку с обоими способами, правда, только на opengl.
Аноним 16/12/19 Пнд 23:50:52 1548868711
>>1548866
Да, там не reload+=0.2, а просто reload=0.2, иначе будет что-то очень странное происходить, если долго не стрелять. Или reload-=dt занеси под условие (reload>0).
Аноним 17/12/19 Втр 00:09:48 1548890712
>>1548465
Либо, кстати, просто делай перед выстрелом задержку в полсекунды. Как лайтовое решение - сойдёт.
Аноним 17/12/19 Втр 03:49:09 1549032713
Timeh.png (13Кб, 845x353)
845x353
Gd.png (6Кб, 645x165)
645x165
>>1548866
Решил попробовать привязаться всё таки не к отрисовке, а времени.
Сделал как-то так, но мне кажется, что я опять привязался к времени выполнения и чем быстрее компьютер на котором это запустят, тем меньшим будет интервал между выстрелами.
Кстати а не рискует ли std::chrono::steady_clock::time_point просто выйти за границы?
Аноним 17/12/19 Втр 11:18:36 1549145714
>>1549032
чел чел чел я все придумал. когда нажимаешь выстрел, создаешь блядский поток, который будет выстреливать и sleep в цикле. когда отпускаешь кнопку - убиваешь поток.
Аноним 17/12/19 Втр 11:44:58 1549169715
>>1549145
Ебаш тредпул сразу для всей обоймы, хули
Аноним 17/12/19 Втр 15:50:25 1549428716
>>1549145
Слишком сложно сделано? Я просто хотел потом ко времени ещё подвязать что-то вроде восстановления энергии и может какие-то смены фреймов для врагов, поэтому сделал целый класс. Я думал в chrono довольно легкие функции, способа сделать это легче я не нашёл к сожалению.
Аноним 18/12/19 Срд 03:38:13 1549964717
Безымянный.png (35Кб, 572x550)
572x550
У кого-нибудь новая visual studio стоит? Если не затруднит, проверьте, там можно добавлять database в качестве источника данных в c++? В шарпе главное есть, а в плюсах нету, только "объект". У меня старая версия просто, может вернули возможность.
Аноним 18/12/19 Срд 10:11:14 1550075718
image.png (22Кб, 398x453)
398x453
>>1549964
нихуя там нет, даже не нашел где добавлять источники данных
Аноним 18/12/19 Срд 10:11:54 1550077719
image.png (27Кб, 929x569)
929x569
>>1550075
не тот скрин приклеился
Аноним 18/12/19 Срд 11:20:02 1550125720
Аноны, крик души. Я люблю C++, но какую же боль вызывает у меня использование чужих библиотек. Каждая из них написана в своем собственном стиле, и в итоге мой код превращается в шизофреническую фантазию, где в одном случае методы пишутся с маленькой буквы, а в другом - с большой, где одни классы называются TClass, а в другом - JDNTBNPWClass. Вот как с этим мириться? Почему за все эти года так и не придумали какой-то единой договоренности о стиле кода, и чтобы еще и тулчейны били по рукам, если код написан иначе?
Аноним 18/12/19 Срд 11:29:23 1550129721
>>1550125
Пиши враппер под либу.
Аноним 18/12/19 Срд 11:36:45 1550135722
1521808864808.jpg (85Кб, 642x637)
642x637
>>1550125
>Почему
Так устроен мир.
Аноним 18/12/19 Срд 11:59:56 1550147723
>>1550125
Ну напиши свой мини-фреймворк, который будет обёртывать нужные тебе либы в одинаковый интерфейс. Частая практика, в том же Я.Такси так делают и не парятся
Аноним 18/12/19 Срд 12:53:23 1550176724
02020000301.jpg (47Кб, 767x529)
767x529
>>1550075
У меня прямо в главном меню есть пункт "данные" и там можно добавить источники. Типа как на скрине, но тут какая-то другая версия тоже.
Аноним 18/12/19 Срд 13:25:39 1550194725
>>1550125
пхах, пчел, не желаешь повнедрять зависимости?
Аноним 18/12/19 Срд 13:55:15 1550212726
15698556285270.mp4 (1723Кб, 640x640, 00:00:18)
640x640
Аноним 18/12/19 Срд 13:55:41 1550213727
>>1550125
За все эти годы даже нормальный менеджер зависимостей и нормальную систему сборки не придумали, что уж говорить про соглашения, которым следовали бы все.
C++ - хороший язык, но его экосистема - полное говнище.
Аноним 18/12/19 Срд 19:21:24 1550389728
>>1550213
Что значит нормальную? Большинство существующих сегодня систем сборки решают какие-то конкретные задачи. Как там с распределенной сборкой? Много из нормальных систем в других языках её поддерживают?
Аноним 19/12/19 Чтв 00:25:07 1550589729
>>1550389
It depends on the language. For example, if the problem is very generic, then we can just use C. We use GCC as a general purpose assembler on Linux. However, if there is no generic problem to solve, then we tend to use the most specific language. For example, if you have a generic problem such as memory allocation, then you'll usually use the most generic language and go to the C language. There is some variation on the theme, however. In C, we tend to use the more general language, and if the problem is very specific like a register overflow, then we'll use an implementation of C and go to C++
Аноним 19/12/19 Чтв 00:32:32 1550592730
>>1550125
The first reason is that it's a very complicated subject. You might be interested in the "Style Guide" that's available from the C++ standards committee, and which is an attempt to standardize things. It's a very thorough thing. But it's not a single code-style standard. The standards committee is a large, complicated, overlapping thing. It's a very complicated problem, and it's very hard to get anything done, unless there's a consensus. If you go to it, you get a whole bunch of stuff, and there's not a lot of consensus.

The second reason is that there's a whole bunch more to the problem than "Style Guidelines", you're looking at many different languages, and you're looking at many different programming styles. There's no standard way of doing things. If you look at any language, there's something else going on, and there's no single standard that will tell you all the things. You just have to learn to look.
Аноним 19/12/19 Чтв 00:39:08 1550594731
I am C++ programmer and I practice here for understanding russian non-formal text. I'm a member of the C++ core committee, I've contributed to STL, the C++ standard library, and I'm the C++ editor.

I started to study russian language in 2007, I am studying Russian Language. I'm a member of the Linguistic and Cultural Society of Moscow, a committee of researchers and instructors for Russian language. I'm a member of C++ committee, member of ISO and I'm responsible of internationalization for the russian standard. I'm a member of the C++ core committee, a member of committee of research and instructors of Russian Language.

Ask me if you want.
Аноним 19/12/19 Чтв 00:48:08 1550597732
>>1550594
Это паста с 2channel, поцоны, расходимся!

>私はC ++プログラマであり、ロシア語の非公式テキストを理解するためにここで練習しています。 私はC ++コア委員会のメンバーです。C++標準ライブラリであるSTLに貢献し、C ++エディターです。

>2007年にロシア語の勉強を始めました。ロシア語を勉強しています。 私はモスクワの言語文化協会のメンバーであり、ロシア語の研究者とインストラクターの委員会です。 私はC ++委員会のメンバーであり、ISOのメンバーであり、ロシアの標準の国際化を担当しています。 私はC ++コア委員会のメンバー、研究委員会のメンバー、ロシア語のインストラクターです。

>よろしければお願いします。
Аноним 19/12/19 Чтв 00:52:07 1550600733
>>1550597
I don't know what you mean. I wrote it as if I thought it would be interesting.
Аноним 19/12/19 Чтв 01:01:51 1550603734
15199813897940.jpg (12Кб, 438x438)
438x438
>>1550600
This is an imageboard. We communicate in specific ways
Аноним 19/12/19 Чтв 01:15:47 1550614735
>>1550603
Yeah, and they do the same thing. It's just different ways to communicate. There are no certain rules of communication, so people can find the right way to convey their message. The way I communicated was the way they did. I was trying to get their point across, but I couldn't do it in this manner. That's what I had to do. But if we just sit here for three hours, and we just sit here like I just sat down with the guy in a movie and have some kind of conversation, we're just going to be confused and we're going to be confused all the time because I'm not communicating in the same way they did.
Аноним 19/12/19 Чтв 01:35:41 1550621736
>>1550589
Ты же понимаешь, что ответил на какой-то другой вопрос?
Алсо, над артиклями поработай
Аноним 19/12/19 Чтв 01:59:46 1550628737
Do not get me wrong, I'm trying to give you information in a unique way, and not copy from somewhere else. I'm giving you information from my personal experience, my experiences, and my research, and I know that you are going to take everything I say with a grain of salt, because your experience is unique to you. But I can guarantee to you that I'm not a scam artist who wants people to take everything he says as fact.
Аноним 19/12/19 Чтв 18:12:01 1551119738
Есть текстовый файл с числами. Числа из него считываются в массив.

std::ifstream in("file.txt");
if (in.is_open())
{
while (getline(in, line))
{
Array = std::stoi(line);
i++;
}
}

Как сделать, возможность не указывать расположение текстового файла в коде, а выбирать его через диалоговое окно?
Аноним 19/12/19 Чтв 18:13:20 1551120739
>>1551119
std::ifstream in("file.txt");
if (in.is_open())
{
while (getline(in, line))
{
Array = std::stoi(line);
i++;
}
}

fix
Аноним 19/12/19 Чтв 18:22:16 1551125740
>>1551120
std::ifstream in("file.txt");
if (in.is_open())
{
while (getline(in, line))
{
Array = std::stoi(line);
i++;
}
}
else
{
for (auto itr : lines_iter())
{
if (itr.count() > 0)
{
for (auto itr_str : i)
{
if (std::stoi(itr_str.first).str() == line)
{
std::ifstream itrout(inout, line);
if (itrout.is_open())
{
while (itrout.getline(in, line))
{
Array = std::stoi(line);
i++;
}
}
}
else if (itrout.is_open())
{
while (itrout.getlines(in, line))
{
Array = std::stoi(line);
i++;
}
}
}
}
}
Попробуй этот код
Аноним 19/12/19 Чтв 19:50:56 1551198741
есть структура:
struct S {
float x;
float y;
float f;
}

массив:
S* A = new S[J]

и есть код
for (int j = 0; j < J; j++) {
A[j].x = fmod(rand(),640);
A[j].y = fmod(rand(),320);
A[j].f = generator();
}

Какого-то хуя ровно после 10-ого значения он начинает записывать хуйню, а не то, что его просят. Вместо троек 123 123 533245 он заисывает 123 345345 0 или что-то в этом роде. В чем может быть ошибка?
Аноним 19/12/19 Чтв 19:53:00 1551201742
>>1551119
>>1551120
>>1551125
>>1551198
да иди нахуй студент ебаный, если не можешь вставить код нормально, то используй pastebin
Аноним 19/12/19 Чтв 21:36:22 1551346743
>>1551198
Разобрался, надо перестать использовать однобуквенную парашу.
Аноним 19/12/19 Чтв 21:39:23 1551350744
>>1551346
Что за однобуквенная параша?
Аноним 19/12/19 Чтв 21:54:20 1551358745
>>1551350
итераторы i,j,k, например.
Аноним 19/12/19 Чтв 21:55:02 1551359746
>>1551198
Вот рабочий вариант:
struct S {
float x;
float y;
float f;
}

S A = new S[J]

for (int j = 0; j < J; j++) {
A[j].x = fmod(rand(),640);
A[j].y = fmod(rand(),320);
A[j].f = generator();
}


A[0] = 1;

float[] A0 = new float[5]

A1 = new float[]

A2 = new float[]

A3 = new float[]


// Generate a random number between 0 and 2,000,000,000

// The generated random number is the sum of the numbers in A0 + A1 +

// A2 + A3

// Note: The generated random number is always between 0 and 2,000,000,000


// The generated random number is the absolute difference of

// the numbers in A0 + A1 + A2 + A3


for (int x = 0; x < 5; x = rand()
2, 0) { // Note: If x == 2,000,000,000 this is the same as 0, 0

A0[x] = 0;

A0[x + 1] = 0; // Note: If x == 2,000,000,000 this is the same as 0, 0


A0[x + 2] = 0;


}


for (int j = 0; j < 5; j = rand() 2, j++) {


for (int x = 0; x < 5; x = rand()
2, x++) {


A0[x] = fmod(A0[x] A0[x + 1], 0);


// Note: We add 1 because we know x has to be a multiple of 2.


// The generated random number is the absolute difference of
// the numbers in A0[x] and A0[x] + A0[x + 1]
A0[x] += A0[x + 1]
A0[x] - A0[x];

Там только вывести осталось
Аноним 19/12/19 Чтв 22:40:38 1551387747
>>1551359
текст задачи покажи
Аноним 19/12/19 Чтв 22:58:58 1551397748
>>1551387
Ты еблан? Я ему помог
Аноним 19/12/19 Чтв 23:03:58 1551400749
>>1551387
На базаре будешь так общаться блять
Аноним 20/12/19 Птн 00:29:41 1551473750
на skillbox курсы по си++ стоят 2.5к в месяц. Был у кого-нибудь опыт?

Заочная второкурсота информатики, учу теовер и статистику, а по крестам че-то тухло - препод древний деда, который дает какие-то странные изи задания на семестр. Что-то типа найти минимальный элемент массива, лул.
Аноним 20/12/19 Птн 00:41:00 1551475751
>>1551473
Единогласно. Skillbox - хуйня, развод и говно. Если ты тупой даун, который этого не понимает, можешь попробовать конечно. Но потом не жалуйся, когда попадешь в пучину анальной безысходности
Аноним 20/12/19 Птн 00:51:25 1551478752
>>1551475
принято, спасибо, пойду старого пердуран на задачи трясти.
Аноним 20/12/19 Птн 04:46:11 1551531753
Аноним 20/12/19 Птн 07:07:11 1551545754
>>1551531
Ты из js перекатываешься чтоль? У нас такой хуйни нельзя творить.
Аноним 20/12/19 Птн 13:10:34 1551685755
>>1551531
тому що инт, а остальное - лямбды
Аноним 20/12/19 Птн 13:59:06 1551719756
Сап, как собрать проект на c++ со сторонними либами через командную строку? Я нуб, перешел на второй курс вузика. На первом мы слегка затрагивали эту тему, конкретно команду make и make-файлы, но делали это очень поверхностно + по книжке. И сейчас возникла необходимость скомпилировать один проект с использованием curl. Проблема в том, что при компиляции вылазит миллион ошибок, вроде "не найдено определение...", пробовал компилировать так:
g++ main.cpp header.h json.hpp curl/curl.h curl/curlver.h тут еще несколько файлов curl -o test
Насколько я понимаю, файлы компилируются не вместе, но как сделать правильно я не знаю.
Аноним 20/12/19 Птн 14:07:00 1551727757
>>1551719
Не нужно указывать 100500 файлов, хватит -Iпуть_к_хедерам -Lпуть_к_либам -lназвание_файла_с_либой.
Если что, -I - заглавная i, а -l - строчная L. Ненавижу пидораса, который это придумал
Аноним 20/12/19 Птн 15:40:57 1551770758
>>1551719
g++ main.cpp -o main.o
g++ main.o -lcurl -o test
Аноним 20/12/19 Птн 15:47:40 1551778759
Эй, перекот вам комитет пилить будет? Перекатывайте тред уже.
Аноним 20/12/19 Птн 15:50:15 1551782760
Аноним 20/12/19 Птн 16:01:01 1551786761
>>1551778
да он сам перекатится когда придет время
Аноним 20/12/19 Птн 16:06:43 1551788762
>>1551719
cmake лучше изучай, пригодится потом
Аноним 20/12/19 Птн 16:07:46 1551790763
>>1551786
о и давно программисты перекат тредов автоматизировали? мое увожение
Аноним 20/12/19 Птн 16:16:44 1551800764
>>1551788
>cmake лучше изучай
Он не понимает, как компилятор запускать, что такое объектный файл, как инклуды работают, а ты ему сразу cmake советуешь.
Аноним 20/12/19 Птн 16:27:12 1551806765
>>1551719
Сurl needs the full headers to compile your c++ project
It is a good idea to add header files to your project (with a few exceptions, you can add only the header files). However, it does not mean that your project is compile-able. The header files don't include the libraries, and the only exception is header files that contain only library headers. The reason is that they contain only libraries definitions (including headers) and headers from the external sources are included, the external sources are not defined in the .h files. The other exceptions are: The header files in the same directory, the headers of external source files and the headers of libraries (including headers).
Аноним 20/12/19 Птн 16:27:28 1551807766
Аноним 20/12/19 Птн 16:29:02 1551809767
>>1551800
Ну так таам документация есть, как раз все поймет, мне просто больше дедуктивный метод познания заходит а не индуктивный
Аноним 20/12/19 Птн 16:58:20 1551830768
Как в qtcreator просмотреть все доступные конструкторы у класса, например кнопки?
Аноним 20/12/19 Птн 17:16:30 1551844769
image.png (1Кб, 237x45)
237x45
>>1551830
Ctrl+Space при курсоре в скобках? Там отображаются даже неявный конструктор копирования.
Они в новых версиях иконку F1 выпили уже наконец?
Аноним 20/12/19 Птн 18:17:48 1551877770
Подскажите как закодить интерполяцию. У меня есть решетка, в ней какие-то значения. Нужно получить значения для одного квадратика, например, а потом для всей решетки. Беру один квадратик, получаю интерполяционный многочлен. Беру другой получаю другой многочлен. И что дальше делать?
Аноним 20/12/19 Птн 18:42:18 1551889771
image.png (30Кб, 1047x590)
1047x590
>>1551877
для какого блять квадратика, ты что даун?
Аноним 20/12/19 Птн 18:47:44 1551892772
>>1551889
ок, ты нашел многочлен первой степени для одного значения, одного квадратика. Но в каждом квадратике несколько значений, а самих квадратиков 9 штук.
Аноним 20/12/19 Птн 18:49:19 1551893773
>>1551877
Гугли метод наименьших квадратов
Аноним 20/12/19 Птн 18:49:30 1551894774
>>1551727
>Ненавижу пидораса, который это придумал
for (int I=0; I<11; ++I)
    for (int l=0; l<I; ++I)

Есть шрифты, где ещё и 1 похожа на l. А иногда 1 из одного шрифта выглядит как l из другого и наоборот.
Аноним 20/12/19 Птн 18:49:41 1551895775
>>1551877
пойти нахуй со своей лабой?
Аноним 20/12/19 Птн 18:54:41 1551903776
image.png (58Кб, 1473x685)
1473x685
>>1551892
у тебя на лбу многочлен бля
Аноним 20/12/19 Птн 19:04:17 1551914777
1.png (4Кб, 296x193)
296x193
>>1551903
вот те картинка, нужна одна функция, которая все это интерполирует

>>1551893
т.е. если я последовательно буду применять мнк для двух соседних квадратиков, потом для объединений по два и дальше, то это приведет меня к успеху?
Аноним 20/12/19 Птн 19:14:09 1551936778
>>1551727
>Ненавижу пидораса, который это придумал
Когда это придумывали, каждый байтик был на счету, короткие тэги реально экономили место. Плюс l и I в тех шрифтах в терминалах отличались очень сильно, и никто не думал, что дизайн шрифта когда-нибудь станет проблемой.
Аноним 20/12/19 Птн 19:15:42 1551940779
>>1551914
квадратики как должны между собой взаимодействовать?
Аноним 20/12/19 Птн 19:20:26 1551950780
>>1551914
>вот те картинка, нужна одна функция, которая все это интерполирует
Если хватит линейной интерполяции, то можешь сначала строить выпуклый многоугольник через триангуляцию Делоне (его еще надо будет экстраполировать до краев твоей решетки), а потом смотреть в какой треугольник попадает узел решетки, и получать его значение через барицентрические координаты.
https://en.wikipedia.org/wiki/Delaunay_triangulation
https://en.wikipedia.org/wiki/Barycentric_coordinate_system
Аноним 20/12/19 Птн 19:20:31 1551951781
>>1551936
полон гитхаб шрифтов для кодеров, но у даунов всегда будут нерешаемые проблемы
Аноним 20/12/19 Птн 19:21:13 1551953782
image.png (13Кб, 609x214)
609x214
>>1551914
задачу нормально напиши ало бля
Аноним 20/12/19 Птн 19:35:39 1551973783
А мне вот Cascadia Code понравился.
Это тот, который вместе с новым виндовым терминалом продвигают
Аноним 20/12/19 Птн 19:54:27 1552009784
>>1551936
Так почему сейчас, когда шрифты весят десятки мегабайт с чуть ли не всем юникодом, это легаси до сих пор доминирует, а не сдохло?

>>1551951
Вот бы ещё хоть один из этих шрифтов можно было бы указать здесь при форматировании кода. Хотя о чём это я, у нас даже звёздочки съедаются до сих пор.
Аноним 20/12/19 Птн 20:02:32 1552014785
>>1552009
Ну так ты почитай то, что там вместо шапки. А потом можешь в настройках браузера можешь выбрать какой шрифт использовать для моноширинного текста.
Аноним 20/12/19 Птн 20:07:36 1552022786
>>1552009
> это легаси до сих пор доминирует
Потому что никто системы сборки и миллионы скриптов ради одного хипстера переписывать не будет.
Аноним 20/12/19 Птн 20:12:25 1552032787
>>1550594
>'m a member of C++ committee, member of ISO and I'm responsible of internationalization for the russian standard
Сделайте stod/to_string, в которых явно можно задавать сепаратор, точка или запятая, без настроек локали. Это действительно нужная вещь. Полезнее 2d графики в стандарте, как мне кажется.
Аноним 20/12/19 Птн 20:21:19 1552045788
>>1552009
>Так почему сейчас, когда шрифты весят десятки мегабайт с чуть ли не всем юникодом
Кстати, вопрос: почему сейчас код весит десятки мегабайт. Я понимаю, что инлайн и 64-бита, но, например, у Qt за десять лет бинарники распухли в 10 раз без серьезного увеличения функционала (при этом 32 и 64 бита отличаются по размеру процентов на 30). Os нифига не помогает. Я хочу экзешники на 500 килобайт, как на дельфи, а не 20 мегабайт ради одной формочки.
Аноним 20/12/19 Птн 20:27:16 1552051789
Аноним 20/12/19 Птн 20:29:13 1552052790
>>1552022
При чём тут системы сборки и скрипты? Вроде, речь про щрефты.
Аноним 20/12/19 Птн 20:30:38 1552053791
>>1552052
>При чём тут системы сборки и скрипты? Вроде, речь про щрефты.
Ему не нравится -l в параметрах компилятора, потому что похоже на -I.
Аноним 20/12/19 Птн 20:32:12 1552055792
>>1552051
>Пиши на сишечке
Там такая же фигня. GTK сейчас не меньше Qt весит. Потому что flto, и компиляторы дофига умные.
Аноним 20/12/19 Птн 20:32:19 1552056793
>>1552053
Как раз параметры гцц меня полностью устраивают, они логичные. Я негодую из-за шрифтов.
Аноним 20/12/19 Птн 20:33:23 1552057794
>>1552055
При чем тут gtk? Ты же exe заказывал.
Аноним 20/12/19 Птн 20:39:45 1552061795
>>1552057
Я вообще про бинарники и библиотеки, которые с каждым годом пухнут, как на еде из макдака, без серьезного улучшения функционала.
Аноним 20/12/19 Птн 20:41:38 1552064796
>>1552056
>Я негодую из-за шрифтов.
Реальная проблема со шрифтами - это то, что почти нигде ` и ' нельзя использовать как парные кавычки. Даже в шрифтах "для программистов" вроде Terminus.
Аноним 20/12/19 Птн 20:47:27 1552069797
>>1552064
Тут дело не в шрифтах, а в том, что лексеры многих языков так научены искать строки. Лексеру пох, как выглядит символ, он думает числовыми кодами символов. И для него они разные.
Аноним 20/12/19 Птн 21:04:09 1552081798
>>1552069
>Тут дело не в шрифтах
В шрифтах и клавиатурах. Раньше в шрифтах можно было делать `такие кавычки', и это выглядело нормально, потому что у этих символов было парное начертание. В старой юниксовой документации это повсеместно используется. Теперь в юникоде добавили кучу символов для одинарных кавычек, но специальную раскладку ради них никто использовать не станет, и на клавиатуры лишних символов не добавят. Это и бесит: почему в кодерских шрифтах не сделать парными как раньше, и забить на правильную типографию, на которую все равно всем пофиг в этой области?
Аноним 20/12/19 Птн 22:16:49 1552117799
>>1552064
>>1552069
>>1552081
в емаксе и виме (и, наверное, в других редакторах) можно по желанию настроить "представление" любого символа или сочетания символов)
в емаксе специальный режим для этого есть
вот



Аноним 20/12/19 Птн 22:18:15 1552119800
>>1552032
>Сделайте stod/to_string, в которых явно можно задавать сепаратор, точка или запятая, без настроек локали.
напиши сам то, блядь
не долго и писать
вот
Аноним 20/12/19 Птн 22:49:16 1552150801
image.png (127Кб, 1147x737)
1147x737
image.png (5Кб, 363x116)
363x116
image.png (20Кб, 624x241)
624x241
Хакеры, молю,
>>1545733
Я так и не разобрался с траблой. vcpkg скачал, либы получил.
Никак не могу победить эту студию. Пожалуйста, памагити.
Аноним 20/12/19 Птн 23:14:10 1552175802
>>1551950
Ну допустим у меня есть линейные многочлены для каждого треугольника. А дальше что с ними делать?
Аноним 20/12/19 Птн 23:40:01 1552195803
>>1552175
>Ну допустим у меня есть линейные многочлены для каждого треугольника.
Если есть треугольники, то многочлены не нужны. Переводишь декартовы координаты точки в барицентрические по формуле из вики, потом находишь значение в точке = As+Bt+C*u, где A, B, C - значения в вершинах треугольника, s,t,u - соответствующие барицентрические координаты.
Аноним 20/12/19 Птн 23:41:24 1552196804
>>1552119
>напиши сам то
Я-то написал уже давно. Это в стандарте должно быть, потому что абсолютно все за пределами англоязычного мира на этом спотыкаются хоть раз.
Аноним 21/12/19 Суб 00:10:21 1552217805
>>1552032
Может научить stoi/atio возвращать optional вместо хуй пойми чего?
Аноним 21/12/19 Суб 00:13:26 1552219806
>>1552150
Куда ты их получил блядь?
vcpkg integrate install прописывал? Что у тебя в настройках линковки творится?
Аноним 21/12/19 Суб 00:30:13 1552225807
>>1552217
>Может научить stoi/atio возвращать optional вместо хуй пойми чего?
Да, эксепшены для таких вещей - не очень хорошее решение.
Аноним 21/12/19 Суб 02:15:10 1552278808
Нужно добавить пустую секцию заданного размера во время компиляции в студии. Пробую вот так:
#pragma data_seg(".sec")
__declspec(allocate(".sec")) unsigned char buffer[size];
#pragma data_seg()

Работает, но если включить оптимизацию, то очевидно компилятор оптимизирует этот хак. Как это делается по канону?

Алсо, пилите перекат.
Аноним 21/12/19 Суб 02:19:50 1552284809
>>1552278
Оберни эту хуйню в
#pragma optimize( "", off )
#pragma optimize( "", on )
Аноним 21/12/19 Суб 02:46:38 1552298810
>>1552284
Все равно оптимизирует.
Аноним 21/12/19 Суб 02:49:56 1552302811
>>1552298
Ну тогда добавь post-build step и пихай свою секцию прямо в файл
Аноним 21/12/19 Суб 02:50:57 1552303812
>>1552298
Алсо, оптимизирует скорее всего линковщик из-за LTO, хз как это отключить для одного файла
Аноним 21/12/19 Суб 03:25:01 1552313813
>>1552302
>>1552303
И volatile тоже оптимизирует. Что себе позволяет этот компилятор?

> Алсо, оптимизирует скорее всего линковщик из-за LTO, хз как это отключить для одного файла
> Ну тогда добавь post-build step и пихай свою секцию прямо в файл
Как такое без пердолинга провернуть?

Аноним 21/12/19 Суб 11:21:51 1552440814
>>1552313
LTO наверное можно в параметрах файла вырубить (если ты студией пользуешься).
Post-build step указать можно в настройках проекта, там будет что-то типа создания раржипега
Аноним 21/12/19 Суб 11:52:23 1552462815
Вопрос по qt. Есть класс Mainwindow, в нем я создаю указатель на кнопку и в конструкторе класса делаю так
> button1 = new QPushButton("Button", this);
Но проблема в том, что кнопка не активна. Хотя если создать кнопку отдельно
> QPushButton sd("df",&w);
Где w экземпляр класса, всё будет работать. Почему?
Аноним 21/12/19 Суб 12:26:04 1552505816
Помогите кто-нибудь, я создал проект в 10 студии, ни единой строчки кода не написал, а мне уже выдаёт
>fatal error LNK1123: сбой при преобразовании в COFF: файл недопустим или поврежден
инкрементную компоновку отключил, но ошибка осталась. Что это за хуйня?
Аноним 21/12/19 Суб 12:40:36 1552515817
>>1552505
> я создал проект в 10 студии
А открываешь небось в более новой, либо более новая вообще установлена на пеке.
> fatal error LNK1123: сбой при преобразовании в COFF. Что это за хуйня?
У меня эта хуйня проявлялась при компиляции ресурсов. Для начала можешь все ресурсы (иконка/инфо о версии) удалить из проекта и попробовать пересобрать. А так, чтобы с ресурсами компилировать нужен какой-то апдейт на 10-ю студию. Какой - не помню.
По факту более новые студии меняют какую-то нужную либу и 10-я студия обсирается. Как вариант можно эту либу взять с машины, где нет студий новее 10-й и положить её рядом с компилятором. Что за либа опять таки запамятовал.
А вообще нахуй тебе десятая студия вообще. Бери новые или вообще QtCreator.
Аноним 21/12/19 Суб 12:49:31 1552527818
>>1552515
>А открываешь небось в более новой
В 10 и открываю. Никаких студий новее я не ставил, 10 поставил из-за того, что мой ноут 17 или 19 не потянет.
Аноним 21/12/19 Суб 12:55:29 1552535819
>>1552527
>17 или 19 не потянет
Ты практик или теоретик, ты пробовал?
У меня тоже достаточно динозаврический ноут(что дома, что на работе), но полет нормальный с обеими версиями.
Аноним 21/12/19 Суб 12:56:27 1552536820
>>1552535
У меня даже 10 лагает.
Аноним 21/12/19 Суб 12:59:33 1552540821
>>1552536
Теоретик, значит. Как хочешь.
Как я помню, десятая-двенадцатая сами по себе лагучие. Мне сначала поставили на удаленной машине 12 - она работала хуже, чем 17/19, которые я ставил сам.
Аноним 21/12/19 Суб 13:10:57 1552561822
image.png (19Кб, 851x151)
851x151
image.png (64Кб, 1367x390)
1367x390
image.png (40Кб, 1332x413)
1332x413
>>1552219
Прописал. Проект скомпилился.
Анон, спасибо большое.
В приложении 2 и 3 два скрина. Я в душе не ебу что это значит. Просто напихал путей куда мог. Как эта хуйня вобще работает? Где можно прочитать инструкцию как добавлять библиотеку? Так чтобы по пунктам, с обкашлянными моментиками всеми.
Я буквально не понимаю что я сделал.
Аноним 21/12/19 Суб 13:12:31 1552567823
изображение.png (93Кб, 1920x1080)
1920x1080

Это что же получается, мне что, нужно качать 2017 или 2019 ВС? Ну не пиздец ли? Сейчас стоит 2010.
Аноним 21/12/19 Суб 13:27:14 1552604824
>>1552561
Тебе ничего не нужно руками добавлять, если ты прописал vcpkg integrate install
По поводу подключения библиотек ты хуй где инфу найдёшь. Нужно только уяснить, что со стороны библиотека - это по сути набор заголовков и, опционально, lib(+DLL если линковка динамическая). То есть всё, что тебе нужно, это
а) указать пути к заголовкам
б) прописать названия .lib файлов
в) чтобы не писать каждый раз путь к lib файлу можно указать путь к папке с этими файлами.
г) если линкуешься динамически, то нужно не забыть DLL положить рядом со своей приложухой/библиотекой(DLL)

В студии для пункта "а" это твой пикрил 2 либо пути в пункте выше (каталоги vc++ блядь, какой же уёбищный русский перевод у студии, пиздец просто).
Для пункта "б" это твой пикрил 3, для пункта "в" это пункт выше (или нет, не ебу как оно там на русском называется)

DLL если планируешь запускать без студии копируешь руками либо скриптом самописным, хотя если в студии не прописаны пути до бинарников, то тоже придётся так делать.

Конечно, это всё при условии того, что библиотека написана нормально (в vcpkg все библиотеки приводят к нормальному виду).
Аноним 21/12/19 Суб 13:28:17 1552606825
>>1552567
Генератор смени бля или в vcpkg поищи её
Аноним 21/12/19 Суб 13:30:22 1552610826
>>1552606
На какой, качать 2017 или 2019 ояебу как долго.

Аноним 21/12/19 Суб 13:33:33 1552617827
>>1552606
Мне это надо собрать, всё, столько ебли из-за этого, ор выше гор, понятное дело, что проще поставить 2017 или 2019 и не мучать себя, но у меня йобта, а качать надо от 10 ГБ.
Аноним 21/12/19 Суб 13:33:54 1552618828
Аноним 21/12/19 Суб 13:37:39 1552624829
Есть в 2к20 рабочие эмуляторы cuda (просто чтобы код протестировать)? Поискал в интернете, только какие-то васянопроекты 3-4 летней давности.
Аноним 21/12/19 Суб 14:34:11 1552762830
geosdesktopliste.png (11Кб, 661x422)
661x422
>>1552045
Нихуя ты охуел, 500 килобайт на бинарник! Распухшая делфи. Я хочу чтобы вообще весь гуй влезал в 30КБ, как GEOS DESK TOP на коммодоре 64, с контролами, менюшками, окошками, иконками и всем-всем-всем.
Аноним 21/12/19 Суб 15:03:32 1552780831
Аноним 21/12/19 Суб 16:39:20 1552918832
>>1552780
Да давай тут останемся, 100й тред как никак
Аноним 22/12/19 Вск 00:32:33 1553452833
>>1552617
Пиздец. Ты ниасилил утилиту с тремя кнопками?
Аноним 22/12/19 Вск 00:41:52 1553462834
Бамп треду
Аноним 22/12/19 Вск 00:42:10 1553463835
Бамп юбилейному
Аноним 22/12/19 Вск 00:42:51 1553464836
Бамп
Аноним 22/12/19 Вск 00:43:26 1553465837
Бамп
Аноним 22/12/19 Вск 00:44:08 1553467838
1486303186876.jpg (375Кб, 1910x1200)
1910x1200
Аноним 22/12/19 Вск 00:44:41 1553469839
Тред всплывай
Аноним 22/12/19 Вск 04:38:24 1553523840
Аноним 23/12/19 Пнд 10:34:46 1554413841
>>1551782
спасибо, на курсере подал заявку на матпомощь
constexpr в разных файлах Аноним 02/01/20 Чтв 16:42:09 1563128842
есть main.cpp, в нём определено
constexpr char null_char = '\0';

есть token.h и token.cpp, в которых используется null_char. Если я пишу в token.h
extern char null_char;

main.cpp(8,16): error C2373: 'null_char': redefinition; different type modifiers

если ничего не пишу в token.h

token.h(22,16): error C2065: 'null_char': undeclared identifier
token.h(22,16): error C2065: 'null_char': undeclared identifier
token.cpp(11,12): error C2065: 'null_char': undeclared identifier

Как сделать, чтобы одно и то же constepr использовать в разных файлах?

MS Visual Studio 2019 Community
Аноним 03/01/20 Птн 14:22:24 1563730843
>>1563128
extern это не для компл тайм переменных
Аноним 03/01/20 Птн 14:23:36 1563733844
>>1563128
ты вообще читал, что такое constexpr?
Аноним 08/01/20 Срд 15:16:31 1567488845
Сап аноны, кто может написать простеньку прогу за денежку?
Аноним 08/01/20 Срд 16:50:10 1567565846
Аноним 08/01/20 Срд 18:05:33 1567632847
изображение.png (172Кб, 483x417)
483x417
Аноним 13/01/20 Пнд 23:26:25 1572195848
>>1567632
Но это же тебе надо обратиться в делфи/паскаль тред.
Код процедуры пункта Г будет меньше чем на 10 строк (может быть даже 5 строк), и написать его можно секунд за 30. Просто смешно предлагать за такое денежку. Я бы написал, если бы у меня был настроенный компилятор под рукой - нужно потыкать функции, там какая-то контринтуитивная эбола была со строками, если не ошибаюсь.
Аноним 13/01/20 Пнд 23:31:48 1572205849
>>1572195
Не стыдно некрофилией заниматься?
Аноним 14/01/20 Втр 13:08:35 1572488850
>>1572205
А, ты в плане что тред старый? А я то думаю в чём же дело.
А я и не заметил, их тут перекатывают раз в год, и нет в треде сообщения о перекате обычно.
Аноним 14/01/20 Втр 13:44:19 1572510851
Аноним 14/01/20 Втр 14:57:41 1572575852
103.jpeg (23Кб, 469x469)
469x469
>>1572488
>>1572510
Да он старый, но он юбилейный , мне будет жаль, когда он утонет
Аноним 16/01/20 Чтв 10:44:01 1574019853
>>1528036
Автор гуманитарий, мало понимающий в двоичном коде (это как минимум)
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов