Сохранен 789
https://2ch.hk/pr/res/410025.html
Прошлые домены больше не функционируют, используйте адрес ARHIVACH.HK.
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

C++ тред

 Аноним 25/11/14 Втр 17:41:32 #1 №410025 
14169264927290.jpg
Старый в бамплимите.
Аноним 25/11/14 Втр 17:58:03 #2 №410028 
14169274832480.png
14169274832501.png
Аноним 25/11/14 Втр 18:04:56 #3 №410029 
http://pastebin.com/7jDKCQG8
ошибка: non-constant condition for static assertion
'n' is not a constant expression
в каком месте n - не константа? Т.е получается, что в mingw constexpr вообще не работает?
sageАноним 25/11/14 Втр 19:50:42 #4 №410056 
>>410029
Ты функцию как вызываешь?
Аноним 25/11/14 Втр 19:55:41 #5 №410058 
>>410056
pi::div (0);
sageАноним 25/11/14 Втр 20:37:34 #6 №410076 
>>410056
Хотя нет, это не важно в общем-то. n - переменная, модификатор const никакого значения тут не имеет, потому как во время компиляции невозможно узнать, что ты передашь в функцию (например, ты можешь передать туда переменную, созданную не константной, то есть константность она будет иметь только в рамках функции, да и то ее можно без проблем убрать кастом). RTFM, короче: http://en.cppreference.com/w/cpp/language/static_assert
Аноним 25/11/14 Втр 21:05:10 #7 №410094 
>>410076
Тогда значит даже в с++11 компайлтайм реализуется через шаблоны? смысл тогда в этом конст экспре?
sageАноним 25/11/14 Втр 21:08:55 #8 №410100 
>>410094
На, почитай: http://habrahabr.ru/post/228181/
А лучше съеби в свой пистон или на чем там щас модно у дебилов писать.
sageАноним 25/11/14 Втр 21:11:33 #9 №410103 
>>410100
Или вот еще: http://stackoverflow.com/questions/8626055/c11-static-assert-within-constexpr-function
Если ты не понимаешь, зачем это нужно, то тебе сюда: https://2ch.hk/pr/res/408466.html
Аноним 25/11/14 Втр 22:01:16 #10 №410130 
>>410029
Передавай в функцию тоже const_expr.
Аноним 25/11/14 Втр 22:06:41 #11 №410134 
>>410130
А не, хуйню написал я. Тебе анон выше все правильно пояснил.
Аноним 25/11/14 Втр 23:21:15 #12 №410170 
с# тоже в этом треде, или есть отдельный?
Аноним 25/11/14 Втр 23:41:55 #13 №410184 
>>410025
Двощ, у нас вместо STL используют собственный велосипед. Это нормально? Сравнить не с чем.
дублирую потому что могу

Аноним 26/11/14 Срд 00:21:25 #14 №410198 
>>410184
В серьёзных проектах всегда так делают. Там же кривая, нерасширяемая архитектура, которая даже не ООП.
sageАноним 26/11/14 Срд 07:06:11 #15 №410292 
>>410170
Толсто.
Аноним 26/11/14 Срд 12:03:11 #16 №410335 
>>410184
Это нормально, если вы знаете что делаете. Вот например геймдев https://github.com/paulhodge/EASTL
Аноним 26/11/14 Срд 12:13:39 #17 №410340 
Привет, программач. Не писал на чистом Си уже давно и заработал ООП головного мозга, так что мне сейчас нужен совет.

У меня есть структура с указателями на несколько функций.

Мне нужна такая же структура, которая будет содержать указатели на функции, которые будут крайне незначительно отличаться от предыдущих.

Как это красиво можно сделать, не копируя кучу кода? Пока единственная идея, которая пришла, добавить в функции опциональный параметр, от которого будет зависеть маленький кусочек логики, а в структуру поле с этим параметром.
Аноним 26/11/14 Срд 12:26:47 #18 №410349 
>>410340
юзай не указатели, а объекты function. Сделай расширенную версию указателя, и в случае сокращенного использования юзай bind.
Аноним 26/11/14 Срд 12:50:36 #19 №410353 
>>410292
Но я прост новый ньюфаг, которому сдавать курсовик к первому декабря с формами, а нас не учили с ними работать.
sageАноним 26/11/14 Срд 12:53:18 #20 №410355 
>>410353
>новый ньюфаг
Аноним 26/11/14 Срд 12:55:59 #21 №410359 
>>410355
В этом итт треде набигают нагибаторы из реальной ирл жизни
Аноним 26/11/14 Срд 12:59:57 #22 №410362 
>>410355
А по делу можешь что-нибудь подсказать? Есть форма-1 и на ней кнопка-1, как задать переход при нажатии на форму-2?
Аноним 26/11/14 Срд 13:13:39 #23 №410368 
>>410362
статик войд Кнопка_онклик(аргументы)
{
Форм2.Райз().
}
Аноним 26/11/14 Срд 13:24:07 #24 №410369 
>>410368
Form2.raise().;
Написал, но компилятор выдал ошибку, требуется идентификатор и выделил ";".
sageАноним 26/11/14 Срд 14:05:42 #25 №410379 
>>410369
tolsto
Аноним 26/11/14 Срд 14:07:13 #26 №410380 
>>410379
Ну блин, помоги пожалуйста. Мне меньше недели осталось, а преподаватель по формам ВООБЩЕ НИЧЕГО не рассказывал.
sageАноним 26/11/14 Срд 14:32:42 #27 №410382 
Троллинг тупостью - пожалуй, самый эффективный вид троллинга.
Аноним 26/11/14 Срд 14:36:15 #28 №410383 
>>410382
Это не тупость, а неосведомлённость. Вот, например ты же не сразу всё это умел, а также начинал с хэллоуворлд'ов.
В ICQ добавь 641747007, если есть желание помочь.
sageАноним 26/11/14 Срд 14:40:48 #29 №410384 
>>410383
У меня есть желание в очередной раз засадить твоей мамаше в зад, чепуш. И я его исполню.
Аноним 26/11/14 Срд 14:41:18 #30 №410385 
>>410383

> ICQ добавь 641747007
> ICQ

Толсто.
Аноним 26/11/14 Срд 14:43:43 #31 №410387 
>>410383
Ладно, доебал.
Скайп vladyusha.grebnev. Через 2-3 часа смогу ответить на все твои идиотские вопросы.

Аноним 26/11/14 Срд 17:47:46 #32 №410430 
Что нужно знать, чтобы устроиться в говноконтору 18летнему 2курснику матфака?
Аноним 26/11/14 Срд 17:49:38 #33 №410432 
>>410430
Если ты спрашиваешь в этом треде, то C++.
Аноним 26/11/14 Срд 18:32:46 #34 №410438 
>>410432
если бы я не спрашивал в этом треде, то я спросил бы "что нужно знать из С++"
Аноним 26/11/14 Срд 18:55:27 #35 №410445 
>>410438

В зависимости от конторы.
В общем случае - сишную основу + си-пи-пишное ооп. Нормально С++ мало кто знает, так что забей.
Аноним 26/11/14 Срд 19:01:50 #36 №410449 
>>410438
STL, Boost уж
Аноним 26/11/14 Срд 19:03:33 #37 №410450 
14170178135370.jpg
Сап /s/.
Нужен халявный обфускатор для плюсов, за ком.продукты жаба душить платить. Гуглёж по торрентам не помог. С меня сотни нефти.
Аноним 26/11/14 Срд 19:08:07 #38 №410454 
>>410445
т.е. Петя Метёлкин из 8го Б может спокойно работать С++ джуниором?
Аноним 26/11/14 Срд 19:20:39 #39 №410460 
>>410454

Да.
Аноним 26/11/14 Срд 19:23:51 #40 №410461 
>>410454

Ну вот тут >>410449 говорят, что без библиотек никуда. Очень спорно. Дело в том, что от джунов обычно ничего особого не ждут, а ценятся общие знания и умение писать код, не привязанное к языку. Естественно, язык тоже стоит знать, но это отнюдь не означает, что ты должен помнить, как построить бесконечный орграф с помощью буста. Это всё гуглится и приходит с опытом.
Аноним 26/11/14 Срд 19:30:11 #41 №410464 
Старый то в бамплимите, перепощу. Вопрос по C без ++, специализированного треда не видно, пишу здесь.

Чтобы объявить функцию явно без аргументов, нужно написать, например,
void foo(void) { ... }
При этом объявление
void foo() { ... }
в си (но не в плюсах) означает произвользное число аргументов любого типа.
Как пример, вторую функцию можно вызвать как
foo(1, 2, 0.35, "говно", "моча");
тогда как с первой компилятор ругнётся на несоответствие аргументов.

Вопрос, собственно, нахуя это нужно. Т.е. как получить эти параметры из функции? Если попробовать подключить stdarg.h и через va_list, не даёт: "«va_start» в функции с фиксированным числом аргументов". Но параметры то куда-то передаются (полагаю, кладутся на стек при вызове cdecl?), как получить к ним доступ?
Аноним 26/11/14 Срд 19:56:43 #42 №410472 
>>410464
Ты прав, параметры передаются на стек.

У тебя есть только одна проблема - ты должен знать количество аргументов и тип каждого аргумента. В printf/scanf это реализовано, например, через строку с форматированием. Или, как вариант, ты можешь предположить, что все аргументы одного типа.

Доступ к аргументам осуществляется через стек.

Например, пусть у тебя есть функция, которая считает среднее арифметическое n целых чисел. Тогда она должна быть объявлена так:

`float avg(int n, ...);`

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

int (звёздочка)p1 = (&n) + 1;

Соответственно, сам аргумент получается так:

int pp1 = (звёздочка)p1

Т.е. мы разыменовываем указатель.


Что делать в случаях, когда у тебя аргументы разного типа, гугли сам.
Аноним 26/11/14 Срд 20:27:43 #43 №410485 
>>410472
А ведь действительно.
Можно так: локальные переменные функции ведь хранятся тоже на стеке, соответственно можно искать указатель относительно них:
http://ideone.com/mMkj5n
видно, что параметр (младший его байт) всегда лежит со смещением на 17 байт относительно локальной переменной i.
http://ideone.com/U5kUHI

Другой вопрос, как сделать это без ёбли с указателями? (чтобы работало независимо от архитектуры, иначе это не только байтоёбство, но и прибито гвоздями к хуй86)

>float avg(int n, ...)
да это понятно, stdarg.h же так и работает.
Нахуя давать возможность объявить функцию именно как f(), подразумевая произвольное число аргументов?
Аноним 26/11/14 Срд 21:12:52 #44 №410515 
>>410485
>Нахуя давать возможность объявить функцию именно как f(), подразумевая произвольное число аргументов?
Прост))
А если серьёзно, то хрен его знает.

>Другой вопрос, как сделать это без ёбли с указателями? (чтобы работало независимо от архитектуры, иначе это не только байтоёбство, но и прибито гвоздями к хуй86)
Я не силён в байтоёбстве, как тут создаётся зависимость от архитектуры? Тут же просто всё лежит на том условии, что все аргументы на стеке лежат друг на друге и тип int всегда занимает одинаковое количество байт.

Аноним 26/11/14 Срд 22:13:34 #45 №410531 
>>410515
>Я не силён в байтоёбстве, как тут создаётся зависимость от архитектуры
Ну если точно, хуй знает. Насколько я знаю, на стек кладётся ещё, по крайней мере, указатель на адрес возврата (и с этим связаны уязвимости с переполнением буфера, когда можно подменить этот адрес), а размер адреса уже зависит от архитектура (64 или 32 бит).
И даже на одной архитектуре в gcc с разными параметрами оптимизации (если собирать с -O3, например, и без) другие значения смещения. Т.е. еще компилятор что-то может соптимизировать от себя, где-то, возможно, использовать вставить fastcall
Аноним 26/11/14 Срд 22:14:56 #46 №410533 
>>410461
Ну STL это стандарт - часть языка. Не знаешь STL - не знаешь С++. А Boost, ну хотя бы знать, как установить, чтоб тебе коллеги его не настраивали.
Да и потыкаться-поиграться с бустовскими алгоритмами для строк, например, ничего не стоит, а пользы дохуя. Boost::format - дохуя удобная вещь - от всем известного scanfa отличается только синтаксисом - почему бы не разобраться - полчаса -час. И уже можно пиздеть, что юзаешь буст. Для джуна ваще норм.
Аноним 26/11/14 Срд 22:25:58 #47 №410541 
>>410533
А, ну с такой логикой ты прав!
Аноним 27/11/14 Чтв 00:57:21 #48 №410605 
>>410533
А меня раздражаеть писать (boost::format("")).str()
sageАноним 27/11/14 Чтв 09:50:23 #49 №410659 
>>410605
пиши boost::format("").str()
Аноним 27/11/14 Чтв 12:35:55 #50 №410701 
14170809550940.png
Можно ли в 12-й студии выполнить сборку проекта так, чтоб был только exe и никакая хуйня, типа MSVCP110D.dll была не нужна.
Чтоб запускался exe нормально на других машинах, на которых не установлена студия?
Аноним 27/11/14 Чтв 13:02:44 #51 №410718 
>>410701
Удваиваю
Аноним 27/11/14 Чтв 14:32:06 #52 №410746 
>>410701
>>410718
Свойства проекта -> C/C++ -> Code Generation

Runtime Library = multithreaded (/MT)
Аноним 27/11/14 Чтв 15:39:31 #53 №410772 
>>410659
Тогда аргументы оператором % не засунешь в него.
Аноним 27/11/14 Чтв 17:13:21 #54 №410827 
14170976017610.jpg
>>410746
Спасибо!
Аноним 27/11/14 Чтв 21:37:57 #55 №410950 
14171134775730.png
>>410772
Аноним 28/11/14 Птн 00:09:55 #56 №411024 
Требуется считать строки из файлов и на их основе создать массив структур данных. Структура представляет собой: <номер строки, количество повторяющихся символов в этой строке>. Вывести отсортированный массив структур.

Ошибка :"Ошибка сегментирования (сделан дамп памяти)". Си изучаю второй день, но с ней сталкиваюсь не первый раз. Но сейчас исправить так и не получилось.
Что я делаю не так?
http://pastebin.com/PfRZbq2F
Аноним 28/11/14 Птн 09:07:51 #57 №411102 
>>411024
в функции countRecurringCharacters в условии цикла while всегда трушное значение
поставь line, чтобы цикл остановился при достижении конца строки
Аноним 28/11/14 Птн 09:09:01 #58 №411103 
>>411102
http://pastebin.com/tK73CP4s
Аноним 28/11/14 Птн 10:04:40 #59 №411106 
>>411103
>>411102
Большое спасибо, ошибку понял.
ЕБУЧАЯ СОРТИРОВКА Аноним 28/11/14 Птн 15:01:32 #60 №411149 
Аноны, очень прошу, помогите! Нужно написать сортировку большого числа элементов за минимальное время, используя битовый массив. Работать с числами используя их двоичный код.
Использовать векторы, списки и т.д. нельзя. Видимо на вход дается некий массив, а его обработка делается при помощи битового массива. Как? Не знаю. Ну, вроде есть поразрядная сортировка, но я не знаю как ее сюда вообще можно вставить.
Ну же, аноны, я верю, что тут есть достаточно умные люди, которые могут помочь мне это написать.
Аноним 28/11/14 Птн 15:47:43 #61 №411163 
>>411149
http://algolist.manual.ru/sort/radix_sort.php
Аноним 29/11/14 Суб 02:10:36 #62 №411412 
Почему CMake такое переусложнённое говнище? Проще написать Makefile, чем разбираться, как добавить туда проект больше 1 файла.
Аноним 29/11/14 Суб 11:50:13 #63 №411488 
>>411412
Удваиваю. Поясните по хардкору, подсоны.
Аноним 29/11/14 Суб 16:23:15 #64 №411564 
>>411488
потому что прыщепердолики сделали
ты это ещё с autotools отношений не имел
Аноним 29/11/14 Суб 18:35:15 #65 №411608 
>>411564
>прыщепердолики
Кто такие?
Аноним 29/11/14 Суб 18:46:02 #66 №411613 
>>411608
Linux вместо ОС, C вместо языка, vim вместо среды разработки.
ФРИЛАНС Аноним 29/11/14 Суб 19:06:29 #67 №411621 
Приветствую С++ господ.
Реально ли крестоджуну ебашить по фрилансу?
Насколько это сложно? Какие задачи обычно бывают?
Я интересуюсь потому, что мне кажется, что на плюсах фрилансить довольно сложно по сравнению с той же жабой или решеткой.
Разъясни, антуан.
Аноним 29/11/14 Суб 19:37:43 #68 №411637 
>>411613
разве что linux не использую, а bsd
остальное всё совпадает
тем не менее
411564-кун
Аноним 29/11/14 Суб 19:38:11 #69 №411638 
>>411621
удалённую работу можешь найти, фриланс - вряд ли
Аноним 29/11/14 Суб 21:33:12 #70 №411688 
14172859925390.jpg
Я тот самый с прошлого треда, ищущий решение задачи по представлению вещественных чисел. Т.е. есть число а нужно его вывести единичками и нулями. Меня послали туда http://www.stackoverflow.com/questions/4743115/how-do-i-use-bitwise-operators-on-a-double-on-c
но моих познаний не хватает чтобы написать завершённую программу на с++.
Помогите котаны, прогаю на g++ ubuntu
sageАноним 29/11/14 Суб 22:20:17 #71 №411700 
>>411688

http://ideone.com/rTUWei
Аноним 29/11/14 Суб 22:33:31 #72 №411705 
Ананасы, вот сейчас приспичило, а вспомнить не могу.
Дело вот в чём. Помню в какой-то книжке вроде по Си или С++ читал о том, как компилятор представляет себе функции из исходников исходя из длины имени, количества принимаемых параметров и их типов.
Напомните если кто-то знает.
Аноним 29/11/14 Суб 22:35:49 #73 №411706 
>>411688
http://digteh.ru/CVT/float.php
Аноним 29/11/14 Суб 23:50:05 #74 №411730 
14172942057560.png
>>411488
Утраиваю. 2 дня курил cmake, сраные генерированные генерации генераторов для проектов xcode. Что вынес в сухом остатке:

(переносимость) AND ((нужен дебаг в xcode AND MSVS) OR (проект строится по умному из многочисленных миллипиздрических модулей))

Если это выпоняется, то таком случае только cmake, ничего даже близко нету. cmake в этой нише генерительных генераторов всех победил, сконцы и прочие гипы и близко не валялись. Ну и в нетбинце и клионе cmake из коробки, а в cmake из коробки проекты для xcode/msvc/еклипца.

Если не выполняется вторая часть, то пишешь оче маленький ни в какую сторону не рекурсивный мейкфайл вот с таким хедером:

LOCAL_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST))))
SOURCES := $(shell find $(SRC_DIR) -type f -name ".cpp")

И забываешь о проблемах с кучами генерированных фекалий вместо мейкфайлов. Для разных наборов сорцов для всех поддерживаемых платформ заводишь ветки в гите.

Под винду пускаешь то же самое из gnumake - проблемы с MSVS будут минимальные, если они все таки возникают (пути лень конвертить например), то точно такая же хрень делается на чистом MSVC nmake через dir/echo и recipe файлы. И мейкфайл для nmake будет очень похожий и такой же маленький - ключи компилятора и декларации утилит будут другие (ну тесты под DrMemory будут пускаться вместо valgrind).

Если не выполняется первая часть (переносимость), то тебе не нужен цмейк, инфа соточка, юзай autotools/xcode/msvs only.
Аноним 30/11/14 Вск 09:38:07 #75 №411809 
>>411705
гугли calling conventions
Аноним 30/11/14 Вск 10:37:22 #76 №411820 
>>411809
Нет, это не то, но я зато нашёл что надо было. Это было Name Mangling.
http://www.avabodh.com/cxxin/namemangling.html
Аноним 30/11/14 Вск 14:25:41 #77 №411882 
>>410025
Зачем Ц++ если есть Го, Раст, Д и Хаскель, прости г-ди?
Аноним 30/11/14 Вск 15:56:12 #78 №411900 
>>411882
Переносимость. Программки не только под x86_64 пишутся и выбора внезапно не остается.
Аноним 30/11/14 Вск 19:33:05 #79 №411984 
>>411638
А какие типовые задачи на С++? Хочу знать, что изучать и практиковать, чтобы зарабатывать деньги.
sageАноним 30/11/14 Вск 19:42:52 #80 №411990 
>>411984
например вычислить байтослесарю shortest path до ларька с водовкой
Аноним 30/11/14 Вск 19:43:20 #81 №411991 
>>411900
у rust'a бэкендом llvm
где твой бог сейчас?
Аноним 30/11/14 Вск 19:47:51 #82 №411996 
14173660714760.jpg
Сап, анончики. Ебусь тут с одной задачей и не могу ничего сделать, помогите. С меня нихуя конечно:


При некоторых заданных x, N и Е, определяемых вводом, вычислите сумму N слагаемых заданного вида, затем сумму тех слагаемых, которые по абсолютной величине больше Е. Для второго случая выполните суммирование для двух значений Е, отличающихся на порядок, и при этом определите количество слагаемых, включенных в сумму. Сравните результаты с точным значением функций, для которой данная сумма определяет приближенное значение при х, лежащем в интервале (-R, R).


Есть кое-какие зарисовки, но думаю они не пригодятся, ибо вообще нихуя
sageАноним 30/11/14 Вск 19:49:34 #83 №411998 
>>411990
)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
sageАноним 30/11/14 Вск 19:52:02 #84 №412002 
>>411998
))))))))
sageАноним 30/11/14 Вск 20:27:02 #85 №412015 
Нахуй вам это говно, кретины?
Аноним 30/11/14 Вск 21:02:13 #86 №412030 
>>412015
Кушать конечно же, а ты о чем подумал?
sageАноним 30/11/14 Вск 21:04:21 #87 №412032 
>>412030
Как на счет нормальных языков?
Аноним 30/11/14 Вск 21:06:32 #88 №412034 
>>412032
Что это значит - "нормальных"?
Аноним 30/11/14 Вск 21:07:11 #89 №412035 
>>412034
ну с++ например
Аноним 30/11/14 Вск 21:08:39 #90 №412036 
14173709191600.jpg
>>412034
Common LISP
sageАноним 30/11/14 Вск 21:17:54 #91 №412042 
Пацаны, ну серьезно. Есть у вас haskell, нахуй вы хуйню размножаете?
Аноним 30/11/14 Вск 21:21:58 #92 №412045 
>>412042
Тебе-то какое дело? Твои права ущемляем или что?
Аноним 30/11/14 Вск 21:27:42 #93 №412050 
>>412048
Просьба внимательнее читать вопрос. Вопрос не про выход за границы массива, а будет ли Undefined Behaviour?

int m[1000];

for(int i = 0; i < 1000;)
{
    m = ++i;
}
Аноним 30/11/14 Вск 21:28:37 #94 №412051 
>>412050
ТВОЮ МАТЬ, третий раз пишу, и в квадратных скобках съедается (после эм)
Аноним 30/11/14 Вск 21:30:44 #95 №412053 
отправляете жалобу, кидайте номера постов.
sageАноним 30/11/14 Вск 21:30:52 #96 №412054 
>>412051
ideone.com только тсс
Аноним 30/11/14 Вск 21:33:09 #97 №412055 
>>412053
Толку кидать жалобы? Часть постов не пропускает антиспам (хоть бы писали, какое именно слово спам), оставшаяся часть некорректное содержание имеет.
Аноним 30/11/14 Вск 21:34:34 #98 №412056 
>>412055
там где шитпостинг те и отправляй
sageАноним 30/11/14 Вск 21:35:39 #99 №412058 
>>411991
сука блять
sageАноним 30/11/14 Вск 21:39:41 #100 №412064 
анонпомогай

Опишите функцию которая определяет, можно ли произвольное число k представить в виде k = x2 + y2.
С помощью этой функции составьте программу, которая определяет все элементы в линейном массиве целых чисел,
которые удовлетворяют этому свойству.
sageАноним 30/11/14 Вск 21:39:46 #101 №412065 
почему удалён мой содержательный пост и закрыт мой содержательный тред?
Аноним 30/11/14 Вск 23:10:27 #102 №412099 
>>411991
Ога, и лет через 10 он наверное дорастет то того состояния, что его можно будет использовать - то состояние, что сейчас, это такой cfront '86 у плюсов. Раст - он вкусный. А пока только плюсы.
sageАноним 30/11/14 Вск 23:19:31 #103 №412101 
>>412099
Тогда ответь на вопрос, умник
>>411984
Аноним 30/11/14 Вск 23:41:47 #104 №412102 
>>411984
>типовые задачи на С++
Ну программки на нем пишут например - ембеддед, игрострой (в том числе на планшетики). Некоторые толстые декстопные вещи - на Qt, WxWidgets. High performance всякие, распределенные в том числе, движки для хранилищ данных, виртуальные машины. Вообщем всюду, где жаба не запускается или по каким-то другим причинам не подходит сразу плюсы появляются. Это все из того, что новое пишут. Ну и очень много всякого большого легаси на нем поддерживается.

Аноним 30/11/14 Вск 23:46:20 #105 №412105 
Ребята, кто в ЛЛВМ смекает? Вчера позапускал инструменты из bin собранного ЛЛВМ. Кто-нибудь может на примере показать как из ЦПП генерируется ОУТ со всеми промежуточными фазами и представлениями?
Внутри код, конечно, лютый. Сплошные шаблоны. Но, вроде бы, лучше этого пока ничего нет.
Аноним 01/12/14 Пнд 01:02:15 #106 №412124 
C++ - для быдла!
sageАноним 01/12/14 Пнд 08:53:55 #107 №412157 
>>412124
те чо ебало набить сука нах бля!?
адрес свой говари уёбак!!
sageАноним 01/12/14 Пнд 10:47:47 #108 №412170 
>>412124
> C++ минус для быдла!
Истину глаголишь.
sageАноним 01/12/14 Пнд 12:19:47 #109 №412188 
>>412105
>ЛЛВМ
Не знать что это, вашпе не программировать, т.е. давно и на Бесийке, ошень гавно.

Аноним 01/12/14 Пнд 19:16:28 #110 №412298 
>>410025
>с++
Анон, поясни за востребованность этой параши. Что сейчас на нем пишут и где вообще используют?
Инб4: наука ко-ко-ко
Аноним 01/12/14 Пнд 20:24:23 #111 №412321 
>>412298
Внезапно геймдев
Аноним 01/12/14 Пнд 20:46:41 #112 №412325 
Build: 0 succeeded, 0 failed, 1 up-to-date, 0 skipped

Вот такую ересь выдаёт. Уже каким-то макаром исправил, но хочу знать что значит?
Аноним 01/12/14 Пнд 20:56:27 #113 №412328 
>>412325
упоротый? всё ок значит, он говорит
Аноним 01/12/14 Пнд 21:41:25 #114 №412341 
>>412328
Но не пишет удалось (succeeded), а вот именно up-to-date. Как это понимать? И что значит skipped. В общем призываются гуру С++ в тред..
sageАноним 01/12/14 Пнд 21:50:51 #115 №412348 
>>412341
Ты можешь быть чуточку тоньше?
Аноним 01/12/14 Пнд 22:01:31 #116 №412355 
>>412348
увы нет ._. салко не убирается
Аноним 02/12/14 Втр 02:21:55 #117 №412438 
Нужно сделать одну штуковину с гуём под Шindows, начал смотреть в сторону Qt и ужаснулся: ничего не делающая программа с пустым окном вместе с библиотеками, нужными для её запуска, весит 43,5 МБ. Билд релизный, само собой, библиотеки тоже. Так и должно быть или я что-то неправильно делаю?
Аноним 02/12/14 Втр 02:23:55 #118 №412439 
>>412438
Алсо, список того, что потребовалось ей для запуска. Помню ведь ещё, что обещали Qt 5 сделать более компактным и модульным, чем 4, но, блядь, в 4 хотя бы пустая программа весила всего лишь 12-15 МБ.

icudt52.dll
icuin52.dll
icuuc52.dll
libgcc_s_dw2-1.dll
libstdc++-6.dll
libwinpthread-1.dll
Qt5Core.dll
Qt5Gui.dll
Qt5Widgets.dll

Кое от чего можно было бы избавиться, перейдя на MSVC, но этот мегабайт -- капля в море.
Аноним 02/12/14 Втр 02:25:11 #119 №412440 
>>412341
Это значит лишь что студия отказывается пересобирать проект, т.к. с момента последнего билда ты не вносил никаких изменений в код.
Аноним 02/12/14 Втр 02:26:50 #120 №412442 
>>412438
Это проблема Qt5, который не нужен. Бери Qt4 и либы будут весит 15 мб.
Аноним 02/12/14 Втр 02:31:53 #121 №412444 
>>412439
ICU можно пересобрать только с русиком или заменить заглушкой, если интернационализацией не пользуешься.
Аноним 02/12/14 Втр 02:55:37 #122 №412446 
Аноны, вот код http://pastebin.com/F3X36V3H
мне пиздец как тяжко С++ даётся, чё делать, чё делать, блеать?!

Объясните, что в строках

binout.write((char)&mas[0],sizeof(WORKER)n);
bincin.read((char)&mas2,sizeof(WORKER));

значит вот это место (char
)&mas2? Что оно выполняет, как это вообще понимать?
Я вообще что-то дико туплю с операциями ввода-вывода в С++, чувствую себя унтерменшем
Аноним 02/12/14 Втр 03:10:57 #123 №412449 
>>412446
Получает указатель на массив и приводит его к типу "указатель на char". Читай справа налево и вспоминай смысл каждой операции. Только не смотри в содержимое своего поста, оно покорёжено парсером сосаки.
Аноним 02/12/14 Втр 04:50:14 #124 №412456 
14174850147650.jpg
Ребят, взгляните на мой быдлокод: http://pastebin.com/Wb9CADyh
Почему в пятой строке программа выводит эту лажу? я так понимаю это адрес чего-то? хз. И как исправить это быдлячество?
Аноним 02/12/14 Втр 04:57:38 #125 №412457 
>>412456
Хотя я немного понимаю почему так происходит (программа ведь еще не обнаружила конец файла, вот и переходит на новую итерацию), но как это исправить не понимаю.
Аноним 02/12/14 Втр 06:16:01 #126 №412462 
>>412442>>412444
Ясно, спасибо. Пересобирать лень, перекачусь на 4, пожалуй, а то и вообще зашкварюсь об MFC.
Аноним 02/12/14 Втр 08:37:51 #127 №412481 
>>412456
http://pastebin.com/DDxpMiq4
раз в файл всегда выводится \n, EOF не должен наступить сразу после чтения нормальной записи
Аноним 02/12/14 Втр 09:25:27 #128 №412493 
>>412438
А как ты хотел? Он же кроссплатформенный, значит всё с собой, а системные возможности не используются, т.е. по сути ты тащишь с собой всю свою систему.
Аноним 02/12/14 Втр 09:32:37 #129 №412495 
>>412462
> зашкварюсь об MFC
С VCL ничто не сравнится, MFC после него - пердолизм.
Аноним 02/12/14 Втр 11:16:45 #130 №412511 
>>412493
Но Qt4 тоже кроссплатформеннный.
Аноним 02/12/14 Втр 11:18:00 #131 №412512 
>>412438
Это не так заметно, когда твое приложение большое.
Аноним 02/12/14 Втр 12:29:05 #132 №412526 
Аноны, почему выдаёт ошибку swapStudent: идентификатор не найден?

http://pastebin.com/YTzHWkgQ
Аноним 02/12/14 Втр 12:43:50 #133 №412531 
>>412526
Для корректной работы этого
student tmp = student2;
нужно определить конструктор копирования.
Для корректной работы этого
student2 = student1;
нужно определить оператор присваивания.
Иначе работают заботливо созданные для тебя компилятором.
Таким образом, например при присваивании student2 = student1 у тебя происходит student2.name = student1.name. А ты ждешь strcpy(student2.name, student1.name)
Аноним 02/12/14 Втр 12:52:24 #134 №412538 
>>412526
И вообще, зачем тебе строки в стиле С? Юзай стринг. Нахуй ты его подключал вообще, если не используешь. Если в своей структуре ты все текстовые поля сделаешь string, то конструкторы и оператор присваивания тебе переопределять не придется.
Аноним 02/12/14 Втр 12:57:40 #135 №412540 
>>412526
И да
void swapStudent(student student1, student student2)
Ты не поменяешь так их местами. По ссылке передавай.
Аноним 03/12/14 Срд 05:36:34 #136 №412629 
как переприсвоить статичную переменную при новом запуске фуннкции?
void dvach() {
static int i=0;
i++;
}
Потому как, очевидно, оно каждый раз начинает с того места где закончило, на ноль не возвращается. А мне хочется чтобы возвращалось. Статичная переменная там для пердоленья с рекурсией и циклами
sageАноним 03/12/14 Срд 07:48:33 #137 №412637 
>>412629
void dvach()
{
static int i;
i = 0;
i++;
}
Какой же ты мудак.
Аноним 03/12/14 Срд 07:51:58 #138 №412638 
>>412637
И какой смысл в том, что ты написал? Статическая переменная эта только для галочки, при любом запуске, в том числе внутри рекурсивного вызова, её значение сбросится в ноль.
мимо
Аноним 03/12/14 Срд 12:03:58 #139 №412684 
>>412440
Добра тебе, анон.
Аноним 03/12/14 Срд 13:14:18 #140 №412698 
>>412638
> Статическая переменная эта только для галочки

>>412629
> Статичная переменная там для пердоленья с рекурсией и циклами
Аноним 03/12/14 Срд 15:55:28 #141 №412751 
>>412321
Нахуй кресты нужны в геймдеве? Вон танки на пионе написаны.
Аноним 03/12/14 Срд 17:20:42 #142 №412778 
>>412751
Охуенный пример. А ещё в рашке живёт негр и по этому можно сделать вывод, что всё население -- негры. Ты б на 99% других игр взглянул для начала.
Аноним 03/12/14 Срд 18:19:47 #143 №412798 
>>412751
Вангую, что танки на питоне написаны так же, как и ева или цивилизация.
Аноним 03/12/14 Срд 20:04:08 #144 №412859 
>>412637
>Какой же ты мудак.
Примерно согласен.
Задал вопрос на дваче, где любое школьное мурло может написать "ящитаю"
[Спасибо] Аноним 03/12/14 Срд 21:11:38 #145 №412902 
>>412629
Выдели отдельный модуль (файл). Там свою статическую переменную объяви вне функций. Там же определяй свою функцию и функцию зануления своей статической переменной.
Аноним 04/12/14 Чтв 05:16:58 #146 №413094 
>>412902
void dvach(bool originalLaunch) {
static int i=0;
if (originalLauch==true){i=0};
dvach(false) //recursion
i++;
}

сделал так. Вы это имели ввиду? Потому как я ебаное нубло и непонимаю в какой такой модуль или тем более файл я могу ее вынести.
Аноним 04/12/14 Чтв 09:35:59 #147 №413107 
Лол, я все думал, кого же он мне напоминает, наконец вспомнил :3

https://www.youtube.com/watch?v=kFz7rZY_DDI
Аноним 04/12/14 Чтв 10:20:47 #148 №413117 
>>413094
Дружище, ты сделал что-то свое.
Вот есть у тебя файл, где находится main(). Так вот, по-хорошему для подобных задач лучше выделить другой(!) файл. Помнишь, как ты добавлял самый первый файл? Так же добавляй еще один. Там вне(!)(!!!) всяких функций объявляй свою статическую переменную. В этом же файле определяй вот эту свою функцию. Внутри нее тебе понятное дело объявлять статическую переменную не нужно. Она уже есть в этом модуле. Просто используй. Кроме этой функции объявляй еще одну для зануления своей статической переменной.
В файле, где у тебя main() прописывай прототипы этих своих функций, и по мере надобности используй и зануляй.
Аноним 04/12/14 Чтв 10:40:37 #149 №413120 
>>413117
Например, реализуем счетчик для чего угодно. В примере ниже мы считаем количество чисел не делящихся на 2, затем на 3. Суть в том, что когда мы решили одну задачу (количество неделящихся на 2), перед тем как приступить к другой, нам нужно обнулить наш счетчик.
Счетчик реализуем в отдельном файле.
http://ideone.com/6bcWUE - main.cpp
http://ideone.com/j5W11j - counter.cpp
Аноним 04/12/14 Чтв 13:40:26 #150 №413175 
>>413120
ООП головного мозга. Вместо пары строчек кода, нагородил целый файл с интерфейсом из кучи функций. Таких нужно инкапсулировать в специальные заведения с решетками на окнах.
Аноним 04/12/14 Чтв 13:54:19 #151 №413182 
>>413175
>ООП головного мозга
Где тут ООП? Инкапсуляция сама по себе еще не ООП. Уебывай за матчастью, короче.
Но перед этим покажи свои пару строчек или пиздабол.
Аноним 04/12/14 Чтв 15:28:25 #152 №413210 
14176961059470.jpg
HEEEEELP

надо написать прогу, которая считает количество символов в текстовом документе с помощью thread
Аноним 04/12/14 Чтв 16:21:33 #153 №413223 
>>413210
Возьми размер файла в треде, чо.
Аноним 04/12/14 Чтв 17:04:04 #154 №413231 
>>413120
static в counter.cpp не нужен. Тем более, если файл отдельный.
Аноним 04/12/14 Чтв 17:16:55 #155 №413243 
>>413231
Блять, да откуда же вы лезете
И ведь каждому свое диванное мнение нужно пиздануть
АНУ ИДИ НАХУЙ АЦУДА
Аноним 04/12/14 Чтв 17:57:34 #156 №413264 
>>413243
Проиграл.
Может он тебя троллит?
Аноним 04/12/14 Чтв 17:58:28 #157 №413266 
Есть только один С, он един и в нём нет плюсов.
Аноним 04/12/14 Чтв 18:08:29 #158 №413271 
>>413266
А как же операторы?
Аноним 04/12/14 Чтв 18:16:51 #159 №413275 
>>413264
Слишком тонко для постдвача. Современный уровень троллинга можно заценить здесь >>412325
Мне лишь хочется, чтобы >>412629-анон, не запутался.
Аноним 04/12/14 Чтв 18:25:50 #160 №413279 
>>410746
Спасибо, тоже надо было.
другой анон
Аноним 04/12/14 Чтв 18:27:38 #161 №413280 
Самая большая проблема что я ощущаю в языках, это неудобны возврат данных из функции. Всего одна переменная. Возвращать через указатели, проверяя на ноль или передавая даже если они ну нужны - как-то не очень. Хочу на стеке, что-бы без структур и чтоб писать поменьше. Как это поудобней делать?
Аноним 04/12/14 Чтв 18:33:29 #162 №413281 
>>413275
Ну вообще по хорошему лучше сделать рекурсивной функцию, которая будет не видна из вне. И вызывать ее через некую паблик start_recursion функцию. А та приватная функция в аргументах может принимать любую хрень, которую захочется передать. В таком случае не надо играться со статикой, что добавит возможность использовать в тредах. И плюс не надо городить отдельный счетчик, как ты предложил.
Аноним 04/12/14 Чтв 18:35:24 #163 №413282 
>>413280
Для этого придумали структуры/классы же. Вызвал метож do_blah_blah_motherfucker, она поработала, засетила члены структуры/класса нужными значениями, а ты дальше гуляй с ними, как захочешь.
Аноним 04/12/14 Чтв 18:50:17 #164 №413291 
>>413117
>Там вне(!)(!!!) всяких функций объявляй свою статическую переменную.
не сделает ли это ее публичной переменной? Хорошо ли это?

Алсо, в чем тонкость вынесения переменной в отдльный файл? Пока я вижу многофайловую структуру чисто как удобство организации и если все запихать в один файл - мои программы от этого иначе исполняться не начнут.
>>413281
а как с точки зрения "элегантности" и "каноничности"? Что вообще говорят, статические переменные тру или не тру?
Аноним 04/12/14 Чтв 18:54:57 #165 №413298 
>>413291
>не сделает ли это ее публичной переменной? Хорошо ли это?
С чего ты взял? Оно будет замкнуто внутри .cpp файла, пока ты не высунешь это наружу сам.

>Что вообще говорят, статические переменные тру или не тру?
Ох ты ж лол. Статические переменные это статические переменные. У них есть свой круг применения. Как пример тот же синглтон паттерн на статике делается.
Аноним 04/12/14 Чтв 19:05:08 #166 №413307 
>>413291
>Пока я вижу многофайловую структуру чисто как удобство организации и если все запихать в один файл - мои программы от этого иначе исполняться не начнут.
Чтобы скрыть реализацию. Чтобы сбилдить все в одну библиотку и линковать. Чтобы было место, где все твои переменные как та же статика не были видны из других частей программы. Да и в конце-концов просто удобно, да.
У тебя вообще какое-то странное представление о том, что внутри происходит.
Аноним 04/12/14 Чтв 19:09:00 #167 №413311 
>>413280
Если не нравятся структуры как предложил другой анон, в плюсах есть кортежи, возвращай их.
Аноним 04/12/14 Чтв 19:10:22 #168 №413313 
>>413281
>лучше сделать рекурсивной функцию, которая будет не видна из вне
Я что-то тебя не понял.
Как в итоге юзер будет этим пользоваться?
Аноним 04/12/14 Чтв 19:16:19 #169 №413318 
>>413291
>не сделает ли это ее публичной переменной?
>статическую переменную
Это >>413231 же ты? А что значит static при объявлении переменной (в частности вне функций)?
Сей не знаешь, а лезешь с критикой
Аноним 04/12/14 Чтв 19:18:12 #170 №413320 
>>413313
Через паблик start_recursion функцию.
Ну короче что-то типа такого: http://ideone.com/sfZwt2
Аноним 04/12/14 Чтв 19:21:39 #171 №413322 
>>413311
Примеры есть? А то я знаю только ц. Просто интересно.
Аноним 04/12/14 Чтв 19:23:33 #172 №413323 
>>413322
На хабре были статейки по поводу, погугли.
Аноним 04/12/14 Чтв 19:29:14 #173 №413326 
>>413322
http://www.cplusplus.com/reference/tuple/tuple/
Внутри функции создаешь объект tuple и
возвращаешь например с помощью unique_ptr.
Аноним 04/12/14 Чтв 19:44:17 #174 №413337 
Ребят, помогите новому ньюфагу в этом итт разобраться с указателями и ссылками.
http://ideone.com/SKp4mS набросал за минуту, не проверял не смейтесь, лучше обоссыте
Что-то вроде того. Возможно ли такая передача массивов?
Если да, то почему компилятор, при определенном условии выдает ошибку сегментации?
Аноним 04/12/14 Чтв 19:46:13 #175 №413339 
>>413337
Не компилятор, а система.
Давай так, если тебе действительно интересно, почему - запускай все под дебагером. Когда оно вылетит, ты увидишь, где и разберешь, почему.
Аноним 04/12/14 Чтв 19:46:48 #176 №413341 
>>413339
>где, и разберешь
быштрафикс
Аноним 04/12/14 Чтв 19:57:50 #177 №413346 
>>413339
>>413339
Ну что же ты! Не настолько я тупой, как может показаться, и дебаггером смотрел.
Дело в чем: у меня размерность первого массива выбирает пользователь а считывается он из файла. Так вот, если размерность < n, то все прекрасно. Как только >= n, так все, segmentation err.
Дебаг подсвечивает 19 строку в том, что я скинул.
Аноним 04/12/14 Чтв 19:58:29 #178 №413347 
>>413346
А размерность второго вычисляется простенькой функцией.
Аноним 04/12/14 Чтв 19:59:34 #179 №413349 
>>413346
И тебя это ни на какие мысли не натолкнуло? Ты за границы массива выходишь, ну. Скорее всего под конец циклов. Сделай вывод итераций и глянь, когда вылазит.
Аноним 04/12/14 Чтв 20:03:33 #180 №413351 
Братия во кресте, не могу разобраться, читая en.cppreference.com . Собственно вопрос. Использую

#include <iostream>
#include <iomanip>

std::cout << std::setw(10) << std::right << ololo << ' ' << std::setw(10) << std::left << azaza << '\n';

Как после azaza сбросить сбросить флажок, отвечающий за выравнивание по левому/правому краю? Чтобы он был не лефт и не райт, а дефолтное значение.
Аноним 04/12/14 Чтв 20:05:06 #181 №413352 
>>413349
Это понятно, что выхожу, да.
Но непонятно как. У меня размерность первого массива, допустим, 3. Тогда МАКСИМАЛЬНЫЙ теоретический размер второго, допустим, 10. Весь массив будет заполнен только при соблюдении весьма ххитровыебанного условия.
Как здесь возможно переполнение?
Единственная мысль — что-то не так с указателями и заполняться он начинает, например, не с 0000H, а с 0FFFH.
Аноним 04/12/14 Чтв 20:10:31 #182 №413355 
>>413352
>что-то не так с указателями и заполняться он начинает
АХАХАХАХХАХАХАХАХАХАХ
Это на сосаче такие слухи ходят, что в сишке/плюсах все сидят и денно-нощно битики гоняют, что ли?

>теоретический
Большая ошибка полагаться на "теоретический". Ты должен знать, что произойдет с твоей функцией при любых условиях. Я уверен, что ты не получаешь размерность, которую ожидаешь. Или накосячил в циклах.
Аноним 04/12/14 Чтв 20:14:41 #183 №413361 
>>413355
>Это на сосаче такие слухи ходят, что в сишке/плюсах все сидят и денно-нощно битики гоняют, что ли?

Это .asm-прошлое, скорее. Травма на всю жизнь...

>Я уверен, что ты не получаешь размерность, которую ожидаешь. Или накосячил в циклах.

Дело в том, что программа работала абсолютно верно, до того, как я не начал городить передачу массивов в функции. Все было объявлено через глобальные, сделано, КАК УМЕЕМ и все такое. Сейчас пытаюсь привести ЭТО в божеский вид и придать подобие кода.
Аноним 04/12/14 Чтв 20:18:49 #184 №413367 
>>413361
Одно другому не мешает. Я недавно неделю долбился над багом, а оказалось, что он из-за того, что я просто что-то куда-то перенес. Проследи все итерации и найдешь, почему падает.
Если хочешь божественный вид, то для плюсов есть контейнеры. Если для сишки, то замени такую передачу массива на двойной указатель. Плюс все это нужно завернуть в структуры/классы.
Аноним 04/12/14 Чтв 20:36:06 #185 №413386 
>>413318
>>413243
ЕМНИП Прата писал, что любая переменная объявленная вне функций статична, а static меняет ее скоуп с глобального на скоуп файла.
Аноним 04/12/14 Чтв 20:42:04 #186 №413389 
>>413386
Глобальная не значит видна везде. Разница между глобальной и статической глобальной в способе ее линка. Точно эту тему не помню, погугли.
Аноним 04/12/14 Чтв 20:51:46 #187 №413390 
>>413351
Бампну вопросец-то, вопросец сам себя не бампнет. Как сбросить флаг до дефолтного? Ну или хотя бы скажите, какой дефолтный флаг.
Аноним 04/12/14 Чтв 20:55:30 #188 №413392 
>>413390
По дефолту ж все с лева. Значит std::left как-бы дефолтный. Можешь сохранить дефолтные флаги, вывести свою инфу и вернуть обратно. http://www.cplusplus.com/reference/ios/ios_base/flags/ - вот с помощью этого.
Аноним 04/12/14 Чтв 20:58:40 #189 №413394 
>>413392
Точно нет. Если я ставлю перед переводом строки std::right, то в вызовах последующих функций форматирование идёт нормальное. Если не ставлю, выводимые цифорки влево жмутся. Но мне нужен не лефт и не райт, а дефолтный.
Аноним 04/12/14 Чтв 21:00:16 #190 №413395 
>>413394
Ну вон сохрани текущие флаги, сделай свое грязное дело и верни их обратно.
Аноним 04/12/14 Чтв 21:00:37 #191 №413396 
Аноны, начал изучать ваш си плаз плаз и вот такая проблема:

Нужно задать массив размера n, куда вводить числа типа float и сравнивать их с Х (тоже типа float)

Реализовать смог, но вводятся числа int и сравниваются с X только если Х - целое. Надо дроби. Поясните как сделать
Аноним 04/12/14 Чтв 21:02:41 #192 №413397 
>>413396
Не понял. У тебя не получается float сравнивать, что ли?
Аноним 04/12/14 Чтв 21:05:59 #193 №413398 
>>413397
Проще говоря, я ввожу сначала число N = 5. После чего ввожу 5 чисел, допустим 1..5. Далее ввожу Х = 1.2 и на экране должно появится:
1 < 1.2 < 2

Все работает только с целыми числами, с дробными никак. Могу скинуть код, причем ошибку вижу сам, но нет идей как исправить
Аноним 04/12/14 Чтв 21:08:23 #194 №413399 
>>413398
Как не работает конкретно? Может ты сохраняешь все в интовом массиве? Давай код, чо.
Аноним 04/12/14 Чтв 21:10:36 #195 №413400 
>>413399
http://ideone.com/obGraa

Проблема тут в том, что i - int и ввожу я a только типа int. Пробовал float - ошибка float[float]
Аноним 04/12/14 Чтв 21:19:53 #196 №413404 
>>413400
Чет не вижу, в чем у тебя проблема. Как она вырожается?
http://pastebin.com/v55hZG8D - вот запилил сам только что. Работает, как ты хочешь.
Аноним 04/12/14 Чтв 21:21:16 #197 №413405 
>>413404
Я ж говорю, что проблема в том, что ввожу я числа int и они никак не сравниваются с иксом, тем который float. Только если х - целое число. Мне надо вводить в массив float и сравнивать их с float
Аноним 04/12/14 Чтв 21:23:35 #198 №413406 
>>413405
Ну я вот ввожу самые разные числа. И целочисленные, и дробные. Все збс.
[Спасибо] Аноним 04/12/14 Чтв 21:24:58 #199 №413407 
>>413386
>на скоуп файла
Таким образом, если переменная объявлена в отдельно модуле, то видеть ее смогут только те функции, которые в этом модуле объявлены. Так мы можем ограничить интерфейсные функции.
Аноним 04/12/14 Чтв 21:26:40 #200 №413408 
14177176000080.png
>>413406
Аноним 04/12/14 Чтв 21:30:50 #201 №413409 
>>413408
Тьфу елки. Не заметил. В последнем цикле должно быть так: for (size_t i = 0; i < (size - 1); ++i)
[Спасибо] Аноним 04/12/14 Чтв 21:31:18 #202 №413411 
>>413408
Почему ты в цикле +=2 делаешь?
Аноним 04/12/14 Чтв 21:34:04 #203 №413412 
>>413409
Действительно работает. Можешь пояснить в чем ошибка моего кода в таком случае? И что есть size_t? Глупые вопросы конечно, но с меня нефть
[Спасибо] Аноним 04/12/14 Чтв 21:35:40 #204 №413413 
>>413412
>>413411
Аноним 04/12/14 Чтв 21:37:57 #205 №413416 
>>413412
В этом цикле не надо было i += 2, как уже заметили. Этим чудесным образом пропускаем половину массива.
size_t обычно используется в плюсах если по красивому писать для обозначения массива. По сути это typedef unsigned long size_t;
Аноним 04/12/14 Чтв 21:38:24 #206 №413417 
>>413416
>для обозначения размера массивов
быштрафикс
Аноним 04/12/14 Чтв 21:43:04 #207 №413419 
>>413416
Тут никак через float не получится? Про size_t почитал, но вот препод в универе хуй клал на всякие сайз т, ему флоат подавай. Пытался сдать эту задачу только с интами - послал нахуй, а я его послать не могу
Аноним 04/12/14 Чтв 21:44:31 #208 №413421 
>>413419
size_t для размера массива ж используется. Сам массив float. Можешь заменить на int, если хочешь.
Аноним 04/12/14 Чтв 21:48:07 #209 №413422 
>>413421
Вроде как починился, вот код:
http://pastebin.com/G7arTf17

Спасибо, анончик, если можешь проверь ту муть что я написал. Боюсь где-то ошибся
Аноним 04/12/14 Чтв 21:50:55 #210 №413424 
>>413422
Ух ты ж е. У тебя препод не принимает работы с английским языком, что ли?
В целом пойдет, только в конце удалить массив не забудь.
Аноним 04/12/14 Чтв 21:52:03 #211 №413425 
>>413424
Нет конечно, более того скажу - способы перевода консоли на рузке я должен найти сам и объяснять ему каждую строчку кода. поэтому и спрашивал про size_t
Аноним 04/12/14 Чтв 21:57:41 #212 №413430 
>>413425
Эм. А оно у тебя вообще работает? Я про русский язык.
Аноним 04/12/14 Чтв 21:59:21 #213 №413431 
>>413430
Да, в свойства консоли надо шрифт сменить для работоспособности. И кстати про удаление массива, обязательно ли это действие? Этот старый ублюдок в лекциях нихуя не поясняет и приходится гуглить самому. Как я понял необходимо delete [] a;
Аноним 04/12/14 Чтв 22:05:02 #214 №413432 
>>413431
Ну в данном случае не обязательно, т.к. у тебя все равно все закрывается и система все почистит. Но вообще удалять конечно нужно, иначе память будет течь. Да, delete[] a; правильно.
Аноним 04/12/14 Чтв 22:56:24 #215 №413449 
>>413223
Юникод? Многобайтовые кодировки? Не, не слышали.
Аноним 04/12/14 Чтв 23:00:44 #216 №413452 
>>413298
>Оно будет замкнуто внутри .cpp файла
я не знал что у файлов есть скоуп.
>Статические переменные это статические переменные. У них есть свой круг применения.
это на примере примера который анон писал. Мол, не использовать статические переменные, а все передавать по ссылке. Вот в том контексте мне и интересно.
>>413298
да, похоже, такое же как и у всех представление. Но про скоуп не знал, да.
>>413318
> А что значит static при объявлении переменной (в частности вне функций)?
А почему вы мешаете в одну кучу "статик" и "вне функции."
 Аноним 04/12/14 Чтв 23:36:12 #217 №413465 
>>413452
а про мувсемантикс поговорили, ребята?
Аноним 04/12/14 Чтв 23:41:29 #218 №413469 
>>413449
А он не уточнял. Можно взять размер файл и поделить на размер типа, что там.

>>413452
Ну в том контексте я просто не использовал статическую переменную, потому что так лучше на мой взгляд.

>>413465
Он тут при чем?
Аноним 04/12/14 Чтв 23:50:16 #219 №413471 
>>413469
>Можно взять размер файл и поделить на размер типа, что там.
Но ведь в зависимости от представления один символ может занимать разное число байт. Взять тот же UTF-8 — от одного до 4 байт на символ.
Аноним 04/12/14 Чтв 23:57:37 #220 №413472 
>>413471
Победил. Ну в таком случае читать файлик.
Аноним 05/12/14 Птн 07:57:14 #221 №413537 
>>413223
>Возьми размер файла в треде, чо.
А если размер изменится - мне опять на двач в этот тред лезть искать размер?
Нахер, лучше сам научусь определять.
Аноним 05/12/14 Птн 09:32:27 #222 №413544 
>>413367
Хорошо, проверю каждое выполнение цикла.
Спасибо тебе.
Аноним 05/12/14 Птн 10:47:57 #223 №413561 
>>413452
>А почему вы мешаете в одну кучу "статик" и "вне функции."
Что значит мешаю в одну кучу? Как будто понятия взаимоисключающие.
Аноним 05/12/14 Птн 13:27:10 #224 №413605 
>>413537
В треде имеется в виду в std::thread, лол.
Аноним 05/12/14 Птн 13:32:37 #225 №413606 
>>413605
обосрался
Аноним 05/12/14 Птн 15:02:43 #226 №413621 
Вот у std::cin имеются члены функции unget() и putback(char ch). А можно как-нибудь "всрать" обратно последний символ std::cout ? Некий аналог unget() .
Аноним 05/12/14 Птн 15:20:03 #227 №413623 
>>413621
Нет. Зачем тебе это?
Аноним 05/12/14 Птн 15:29:08 #228 №413625 
>>413623
форматирование после цикла выравниваю, чтоб красивое было
Аноним 05/12/14 Птн 15:56:32 #229 №413632 
>>413625
Очищай весь экран и пиши заново.
Аноним 05/12/14 Птн 15:58:01 #230 №413634 
>>413625
\b - бэкспэйс
Аноним 05/12/14 Птн 15:59:01 #231 №413635 
>>413621
Про принцип разделения ответственности слышал? Это не работа потока ввода, говно. Пиши обёртку.
Аноним 05/12/14 Птн 16:01:42 #232 №413637 
>>413634
Это первое, что я попробовал, не сработало.

>>413635
Какое тут нарушение принципа разделения ответственности? У меня тут ровно единственная задача - сделать красивое форматирование.
Аноним 05/12/14 Птн 16:04:59 #233 №413639 
>>413637
Тебе уже тут сказали, очищай экран - пиши заново. Где-то храни массив строк вывода и редактируй по мере надобности.
Еще вариант. Есть специальные либы для всяких красивостей в консоли. Если не лень, гугли и разбирайся.
Аноним 05/12/14 Птн 16:05:57 #234 №413640 
>>413637
А у cout задача — вывести данные в некое устройство.
Аноним 05/12/14 Птн 16:06:34 #235 №413641 
>>413639
Да я чуть переписал сам код, у меня скорее чисто спортивный интерес. C++ должен уметь всё.

А вот то, что \b работает только если потом ещё символ ввести, странно.
Аноним 05/12/14 Птн 16:06:58 #236 №413642 
>>413637
А почему бы тебе не делать все форматирование в строковом буфере прежде, чем выводить на экран?
Другой вариант: curses или что-то подобное.
Аноним 05/12/14 Птн 16:14:21 #237 №413644 
>>413641
https://ru.wikipedia.org/wiki/%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D1%8F%D1%8E%D1%89%D0%B8%D0%B5_%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D1%8B
>\b - Перемещает позицию печати на один символ назад
Аноним 06/12/14 Суб 18:48:18 #238 №413983 
14178808988750.png
Сап, аноны. Продолжаю изучать си пи пи вместе с моим преподом мудаком и сегодня задача такова:

Я не буду точно описывать условие, напишу только самое главное
Есть послед. s1.. sn, где s1 не является воскл знаком, а сама послед. заканчивается воскл знаком. Надо определить есть ли в этой последовательности пара соседних "но" и "он".

Сразу возникают вопросы:
Тут как я понял нужен массив, но число n - заранее неизвестно и возникает вопрос как задать массив, будет ли он статическим или динамическим?

Я попробовал сделать статический массив в 100 элементов типа char, вроде работает, восклицательным знаком заканчивает и тд, но если ввожу какое-нибудь s более одного символа, например то самое нужное мне НО, то при вводе след символа возникает хуйня как на скрине. Где я проебался?

Аноним 06/12/14 Суб 18:59:05 #239 №413984 
>>413983
>Где я проебался?
Если вводишь больше, чем от тебя ожидают, излишнее оставляется про запас. Так в s4 у тебя записывается 'н', а в s5 'о'. Поэтому когда нужно вводить s5, тебя не спрашивают.
Аноним 06/12/14 Суб 19:00:40 #240 №413985 
>>413984
как же исправить это?
Аноним 06/12/14 Суб 19:09:06 #241 №413991 
>>413985
Вводить не по символу.
Аноним 06/12/14 Суб 19:12:39 #242 №413994 
>>413983
>как задать массив
Зачем тебе массив, если есть std::string?
Аноним 06/12/14 Суб 19:18:28 #243 №413998 
>>413983
Короче вот смотри эти ссылки:
http://www.cplusplus.com/reference/string/wstring/
http://www.cplusplus.com/reference/string/basic_string/getline/
http://www.cplusplus.com/reference/string/basic_string/find/
Судя по задаче это все, что тебе нужно.
Аноним 06/12/14 Суб 19:20:29 #244 №413999 
>>413983
>пара соседних "но" и "он".
что значит?
Что из этого "абвнонабв", "абвноонабв", "абв но он абв" должно подходить?
Аноним 06/12/14 Суб 19:23:24 #245 №414001 
>>413999
и да, можно ли, чтобы они были размещены в обратном порядке?
Аноним 06/12/14 Суб 19:26:31 #246 №414003 
>>413999
значит что допустим s2 = но и с s3 = он, в обратном нельзя
Аноним 06/12/14 Суб 19:27:50 #247 №414004 
>>414003
Блять, мы тебе тут вдвоем или втроем пытаемся донести, что в один символ нельзя запихнуть два.
Аноним 06/12/14 Суб 19:34:22 #248 №414009 
>>414004
да, видимо я проебался с условием. Пара соседних символов НО или ОН, то есть s2 = н s3 о и наоборот.

Так все таки что с массивом делать? Или тут можно без него обойтись?
Аноним 06/12/14 Суб 19:35:19 #249 №414010 
>>414009
>>413994
>>413998
Аноним 06/12/14 Суб 19:42:02 #250 №414012 
>>414009
http://ideone.com/rO9YH5
Аноним 06/12/14 Суб 20:02:03 #251 №414025 
Мудрые кодеры, в очередной раз спрошу совета.
22 лвл. Изначально цель: выучить основы С++ и потом перекатиться на Свифт, чтобы под ИОС писать. До этого только писал хуйню в школе и на первом курсе типа ИФ ЗЭН.

1. Нормальный ли план? Или я объебался? Читал, что на объект. С на ИОС пишут, но ведь теперь Свифт есть, а, значит, всем похуй?

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

Спасибо!
Аноним 06/12/14 Суб 20:04:55 #252 №414028 
>>414025
Не знаю, что за Свифт, да и похуй. Вот, читай - http://www.cplusplus.com/doc/tutorial/. Еще можешь Дейтел и Дейтел попробовать.
Аноним 06/12/14 Суб 20:06:40 #253 №414029 
>>414028
Спасибо, посмотрю. Но хотелось бы книгу-учебник. Может, задачник.
Аноним 06/12/14 Суб 20:10:01 #254 №414033 
>>414028
У Дейтел и Дейтел учебник это имена авторов такие.
Аноним 06/12/14 Суб 20:10:33 #255 №414034 
>>414033
Тьфу бля, не туда линк сделал. Это было сюда - >>414029
Аноним 06/12/14 Суб 20:15:48 #256 №414038 
>>414012
Все бы хорошо, но тут последовательность заканчивающаяся восклицательным знаком. То есть я ввожу не строку и проверяю ее, а последовательность символом и как только ввожу восклицательный знак - дальнейший ввод прекращается и выдается результат, либо да, либо нет (в зависимости от того есть ли но и он)
Аноним 06/12/14 Суб 20:18:29 #257 №414039 
>>414034
Спасибо, гуглю. Что-то везде в магазинах отсутствует, сучара.
Аноним 06/12/14 Суб 20:26:34 #258 №414043 
>>414034
А Герберт Шилдт - такого знаешь? Ничего не можешь сказать?
Аноним 06/12/14 Суб 20:28:57 #259 №414046 
>>414043
Я такие книги читал лет 5 назад, так что за текущее состояние ничего сказать не могу. Помню, что мне тогда Шилдт не понравился. Может сейчас лучше.
Аноним 06/12/14 Суб 20:32:58 #260 №414048 
>>414038
Читай из потока stream'а по символу, проверяй на нужный.
Аноним 06/12/14 Суб 20:52:26 #261 №414071 
14178883460770.jpg
Анон, кто-нибудь может помочь с домашкой, не могу в выделиние памяти. Вот есть main, который трогать как бы не нужно, он лишь задает строку, а потом сверяет результат.

int main ( int argc, char argv [] )
{
char
res;
assert ( ! strcmp (
(res = RLEDecompress ( "Hello world!" )),
"Hello world!" ));
free ( res );
return 0;
}
И есть функция, которую нужно написать
char RLEDecompress ( const char src )
{
//ЗДЕСЬ ПИСАТЬ
}
При любой попытке обращения к src, пишет seg fault, как мне правильно выделить память под эту строку, чтобы с ней работать дальше в функции?
и да, язык C, извините что сюда пишу
Аноним 06/12/14 Суб 20:53:52 #262 №414073 
>>414071
сука звездочки куда-то пропали, щас перепощу на пастебин.
Аноним 06/12/14 Суб 20:55:07 #263 №414074 
>>414071
http://pastebin.com/czhVS5KF
Вот, помогите ньюфегу.
Аноним 06/12/14 Суб 20:57:17 #264 №414075 
>>414025
Если именно по плюсам годноту надо, то отведай C++ Primer Lippman.
Если задача хорошо знать плюсы не стоит, тогда поясни, что значит основы С++. По чистым сям Ритчи уж.
Шилдт говно.
Аноним 06/12/14 Суб 20:57:23 #265 №414076 
>>414074
По этому коду не скажу, где косяк. Покажи, как ты пытаешься работать с src.
Аноним 06/12/14 Суб 21:00:25 #266 №414077 
>>414074
Я задачи не понял. Объясни норм. Зачем тебе эта функция?
Аноним 06/12/14 Суб 21:02:03 #267 №414078 
14178889234060.jpg
>>414076
В том то и дело, что там косяка нет, это лишь основа, причем правильно написаннная.. Ну допустим, я хотел сделать вот так http://pastebin.com/0t577XuN

>>414077
Домашку, то я сам сделаю, просто не могу правильно выделять память, маллок там все дела. но если интересно, напишу
Аноним 06/12/14 Суб 21:03:15 #268 №414080 
>>414078
Ах да, этот while просто считает сколько символов в строке, чтобы потом выделить память, но как я понимаю память нужно выделить заранее.
Аноним 06/12/14 Суб 21:03:42 #269 №414081 
>>414078
\0
слэш в другую строну
Аноним 06/12/14 Суб 21:04:32 #270 №414082 
>>414081
так, спасибо ступил, но дело то все равно не в этом.
Аноним 06/12/14 Суб 21:05:20 #271 №414084 
>>414082
А больше опять ничего не видно. Запили весь свой код, если все равно падает.
Аноним 06/12/14 Суб 21:06:23 #272 №414085 
>>414082
Ну return у тебя нету. Напиши нормально, заебал. Память тебе под эту строку выделять не надо, маллоки викидывай нахуй оттуда.
Аноним 06/12/14 Суб 21:06:29 #273 №414086 
>>414084
Это и падает, мне нужно сначала с этим разобраться, а потом остальное делать, больше ничего и нет, я начать не могу.
Аноним 06/12/14 Суб 21:07:27 #274 №414088 
>>414085
Ок, но при любом обращении к src, оно падает, даже обычный вывод символа, например.
Аноним 06/12/14 Суб 21:08:01 #275 №414089 
>>414088
Серьезно, напиши весь код.
Аноним 06/12/14 Суб 21:09:13 #276 №414090 
>>414089
Хорошо сейчас, минутку.
Аноним 06/12/14 Суб 21:14:26 #277 №414092 
>>414090
Упс, сейчас я понял какой я тупой, по всей видимости все и так работает.
Аноним 06/12/14 Суб 21:15:37 #278 №414093 
>>414092
Не будет у тебя работать. Хуле ты упрямый какой.
Аноним 06/12/14 Суб 21:16:25 #279 №414094 
>>414093
Думаю он имеет в виду, что оно заработало после правки слеша.
Аноним 06/12/14 Суб 21:16:36 #280 №414095 
>>414092
Пиздец, спасибо анон.
а задание в том что допустим если есть строка Hel2o wor3ld4!!!, то я должен ее переписать, в таком стиле Hello worrrldddd!!!, типо 2 л, 3 р и 4 д, ну вы поняли
Аноним 06/12/14 Суб 21:27:18 #281 №414099 
А реаллок расширает до указанного значения или НА указанное значение?
Аноним 06/12/14 Суб 21:29:45 #282 №414100 
>>414099
гугли сука до указанного
Аноним 06/12/14 Суб 21:32:10 #283 №414102 
>>414100
спасибо, няша, мы можем скрыть нашу с тобой любовь под спойлерами
Аноним 06/12/14 Суб 23:41:25 #284 №414165 
>>414102
Бля, я щас сам себя подстриг, систему наебал считай
Аноним 07/12/14 Вск 00:11:30 #285 №414175 
Вопрос нулевого.
Как нарисовать окружность в Visual Studio Express 2013 на с++?
Пробовал гуглить конечно. На всяких форумах советуют использовать функции объявленные в заголовочном файле <afxwin.h>, а он в состав Express'а не включён, так как Express не поддерживает MFC (как я понял).
Вот типичный вопрос по данной теме в топе гугла:
http://stackoverflow.com/questions/5543523/afxwin-h-file-is-missing-in-vc-express-edition.
Аноним 07/12/14 Вск 00:49:43 #286 №414187 
>>414175
Всё, разобрался.
Аноним 07/12/14 Вск 00:58:37 #287 №414193 
>>414175
Не ответ на твой вопрос, но M$ недавно выкатил бесплатную почти для всех версию Community, которая есть по сути переименованная Professional, и в которой есть MFC и прочее говно.
Аноним 07/12/14 Вск 04:19:33 #288 №414216 
>>414193
Ссылку? Я кроме Express, Professional, Premium, Ultimate других не видел.
Аноним 07/12/14 Вск 04:42:12 #289 №414218 
>>414216
http://www.visualstudio.com/en-us/products/visual-studio-community-vs
Аноним 07/12/14 Вск 11:09:39 #290 №414238 
Анончики, продолжаю ебаться с задачей про НО и ОН, вот уже вроде вышел на верный путь, спасибо анону, который кинул решение с алгоритмом поиска символов. Теперь моя задача проверять только до первого восклицательного знака, хз вообще как реализовать. Вот код:
http://ideone.com/2Nqd7R

От первого воскл знака отличает, а вот как с след. сделать хз, с меня нефть
Аноним 07/12/14 Вск 11:22:00 #291 №414243 
Ко-ко-ко программа не работает. Анон памаги. Есть программа, которая должна сформировать линкед лист путём добавления нового элемента в начало.
Как выглядит структура элемента листа:
struct List
{
int data;
List next;
};
Так выглядит подпрограмма для добавления элемента в начало:
void list_add_begin(List
my_list, int data)
{
List tmp = my_list;
my_list->data = data;
my_list->next = tmp;
}
Но вместо собственно добавления элемента в готовый список, оно перезаписывает весь лист данными добавляемого элемента. Как законтрить?
Аноним 07/12/14 Вск 11:32:07 #292 №414250 
>>414243
Разметкофикс.
Структура:
[code]
struct List
{
int data;
List next;
};
[/code]
Подпрограмма для добавления элемента в начале:
[code]
void list_add_begin(List
my_list, int data)
{
List tmp = my_list;
my_list->data = data;
my_list->next = tmp;
}
[/code]
Аноним 07/12/14 Вск 11:36:57 #293 №414252 
>>414250
Не работает тут тег code давно уже, макака явно сэкономила на разработчиках макабы, копипасть на pastebin.
Аноним 07/12/14 Вск 12:46:06 #294 №414269 
>>414238
http://ideone.com/DMuJWl
Как-то так.
Аноним 07/12/14 Вск 12:53:57 #295 №414270 
>>414269
Добра, анон. Но я уже сам справился:
http://ideone.com/gEpBzO

Возможно есть ошибки, исправь пожалуйста.

Единственное чего не учел - отсутствия воскл. знака вообще, но по условию задачи он должен быть в любом случае
Аноним 07/12/14 Вск 13:00:45 #296 №414272 
>>414270
Да норм все.
Есть некоторые вопросы типа, а можешь ли ты удалять содержимое строки, как ты делаешь. Плюс у тебя разбирается только одно слово. Подходит ли тебе это?
Код который, я кинул, позволяет вводить сколько угодно слов и предложений. Ты можешь нажимать enter сколько угодно пока не встретися '!'.
Аноним 07/12/14 Вск 13:13:52 #297 №414275 
>>414272
Короче, если отталкиваться от твоего кода, я бы вот так сделал
http://ideone.com/MSVguf
Аноним 07/12/14 Вск 13:18:11 #298 №414277 
>>414275
В этом коде не проверяется отличие первого символа от воскл. знака, это можно как-нибудь пофиксить и чем он отличается от моего?
Аноним 07/12/14 Вск 13:21:40 #299 №414279 
>>414277
Бля, что-то туплю. Добавил простое условие на проверку s.find == 0, как у меня и было. Спасибо, анон
Аноним 07/12/14 Вск 13:25:28 #300 №414281 
>>414277
Я конечно хз, что там тебе препод задал, но из того, что ты озвучил, следует, что тебе не нужна отдельная проверка на восклицательный знак. Если ты введешь "!он хуй", все что после восклицательного знака и так не будет учитываться.
>чем он отличается от моего
Нет редактирования строки и возможно вводить сколько угодно слов.
Аноним 07/12/14 Вск 13:27:19 #301 №414285 
>>414281
Ну, я просто сделал так:

v = s.find('!');

if (v == 0)
cout << "Первый символ должен быть отличен от восклицательного знака!" << endl;
else if (v != -1)
cout << (min(s.find("но"), s.find("он")) < v ? "Да, имеются." : "Нет, отсутствуют.") << endl;
else
cout << "В последовательности должен быть хотя бы один восклицательный знак!" << endl;
Аноним 07/12/14 Вск 14:12:45 #302 №414290 
>>414218
Спасибо. Express можно апнуть до версии Community, или надо отдельно ставить Community, a Express сносить?
Аноним 07/12/14 Вск 14:19:50 #303 №414291 
>>414290
Только ставить заново. Много времени не займёт, они в образ вшили все обновления.
Аноним 07/12/14 Вск 14:31:56 #304 №414292 
Тест.
Аноним 07/12/14 Вск 14:35:17 #305 №414293 
>>414292
НЕНАВИСТЬ, хрен отправишь сообщение через окно быстрого ответа.

>>414285
http://pastebin.com/m5MqnJP0. На русский сам заменишь. Если хочешь, чтобы сразу же после ввода ! символа останавливался ввод, тогда у меня для тебя плохие новости. Тут на стандартных либах ничего не сделаешь. Либо бустом придется пользоваться, либо нативным апи.
Аноним 07/12/14 Вск 14:38:16 #306 №414294 
>>414293
http://pastebin.com/m5MqnJP0
Фикс ссылки.
Аноним 07/12/14 Вск 15:02:35 #307 №414296 
14179537550550.jpg

Посоветуйте учебник по STL.
Аноним 07/12/14 Вск 15:07:49 #308 №414298 
>>414296
Точно не помню, но вроде у Николай Джосьютис хорошая книга.
Аноним 07/12/14 Вск 15:18:35 #309 №414299 
>>414298
Ей более 10 лет уже, актуально еще?
Аноним 07/12/14 Вск 15:22:56 #310 №414300 
>>414299
Когда я читал, тогда еще не было С++11, тогда она была актуальна. Думаю сейчас она тоже пойдет, а С++11/14 фичи сам сможешь доучить. А вообще легче просто документацию читать, ничего трудного в стандартной либе нет.
Аноним 07/12/14 Вск 15:26:44 #311 №414301 
>>414300
Да мне скорее нужно не объяснение, так-как спецификацию я могу покурить. Мне нужно обзор возможностей, приёмов, что где и для чего юзать.
Аноним 07/12/14 Вск 15:34:33 #312 №414304 
>>414299
Если ты не из русекоубогих, то он ещё два года назад выкатил обновлённую версию по последнему стандарту:
http://www.amazon.com/Standard-Library-Tutorial-Reference-2nd/dp/0321623215/
Аноним 07/12/14 Вск 15:36:17 #313 №414305 
>>414304
О благодарю. Попробую, я из intermediate-юродивых.
Аноним 07/12/14 Вск 17:44:56 #314 №414339 
Откуда блять у меня в пустом массиве чарном появляются с самого начала какие то символы или числа хз -31 15 2. вот эти три числа, ни с хуя, с самого начала. Т.е. помимо нулей, выписывает где то в середине еще и эти числа.
язык C Кто сталкивался?
Аноним 07/12/14 Вск 17:47:42 #315 №414340 
>>414339
Ой боже, какой пиздец. Книги совсем нынче читать не принято? Нормально это, память выделяется, но не обнуляется, в выделенном куске может быть любой мусор. Хочешь занулённый массив -- выделяй через calloc или используй memset.
Аноним 07/12/14 Вск 18:08:32 #316 №414347 
>>414296
Липпман хорошо STL дает >>414075
А если нужно глубже, чтобы с подводными камнями, конечно же Мейерс Эффективное использование STL
Аноним 07/12/14 Вск 18:12:11 #317 №414352 
>>414347
Спасибо, я Мейерса сейчас читаю, но мне же нужно скорее "обзор, возможности, что-как/где-что/где-как можно и нужно применять.
Аноним 07/12/14 Вск 18:13:05 #318 №414354 
>>414352
Ну такое навряд-ли в книгах есть хотя я всего пару читал.
Аноним 07/12/14 Вск 18:15:59 #319 №414355 
>>414352
>обзор, возможности, что-как/где-что/где-как можно и нужно применять
Не уверен, что понял тебя правильно, но тогда Липпман 5я редакция, главы про алгоритмы и контейнеры. Все с учетом 11й редакции.
Аноним 07/12/14 Вск 18:17:12 #320 №414356 
>>414354>>414355
Судя по оглавлению вот это >>414304 именно то, что нужно. Дочитаю Мейерса и приступлю к изучению
Аноним 07/12/14 Вск 21:25:31 #321 №414418 
>>414356
Вроде клевая, да. Только не понимаю, смысла читать в таком порядке.
Аноним 07/12/14 Вск 22:20:16 #322 №414447 
>>414418
На серию Мейерса я наткнулся сам, дочитывая третью книгу осознал что я в STL "не очень", а нужно. Тем более там осталось 100 страниц, хули то бросать.
Аноним 08/12/14 Пнд 02:40:05 #323 №414512 
Как подключить библиотеку libcurl в visual studio 2013?
Почему все так сложно? Почему нету пакетных менеджеров как в java?

Все туторы которые читал просят скачать файл которого на сайте уже нету.
Аноним 08/12/14 Пнд 03:00:30 #324 №414515 
>>414512
>Почему нету пакетных менеджеров
1) Потому что история языка тянется со времён царя Гороха.
2) Есть, в Linux достаточно поставить <пакетнейм>-dev, подключить нужный хэдер, и можно использовать библиотеку.
3) С главной страницы официального сайта за один шаг можно добраться до этого биндинга: https://github.com/JosephP91/curlcpp
Аноним 08/12/14 Пнд 03:18:18 #325 №414518 
>>414515
сори у меня просто бомбануло, решил научится писать в этих ваших низкоуровневых языках, дай думаю post запрос отправлю, вот уже второй день отправляю.
Аноним 08/12/14 Пнд 03:30:10 #326 №414519 
>>414447
Кстати, новое издание Джосаттиса есть уже и на русском http://www.ozon.ru/context/detail/id/27978215/, можно и бесплатно найти. Сам все собираюсь прочитать, но руки не доходят.
Алсо, книга Мейерса по STL слегка устарела, например, вместо swap treak у него описанного, теперь есть shrink_to_fit. Но все равно полезная книга.
Аноним 08/12/14 Пнд 11:32:25 #327 №414568 
>>414519
Так и не нашел, где своровать, если можешь поделись ссылкой.
Аноним 08/12/14 Пнд 13:46:03 #328 №414595 
>>414512
А причем тут язык и пакетный менеджер? Дякую Боже, что такой хуйней не страдают при разработке языка.
Кстати в Студии есть что-то вроде пакетного менеджера, но я не помню, как он называется.
Аноним 08/12/14 Пнд 13:52:17 #329 №414596 
>>414595
Nuget. Только через него мало что можно поставить.
Аноним 08/12/14 Пнд 15:51:05 #330 №414621 
14180430652640.jpg
>>410025
Друзья мои, подскажите пожалуйста, как запустить скомпилированный файл, написанный на c++ в IDE NetBeans. А то мне кажется я чего-то недопонимаю...
Аноним 08/12/14 Пнд 16:10:17 #331 №414626 
>>414621
Много разных способов. Например нажать два раза ЛКМ на файле. Или один раз ЛКМ, а потом тыцнуть Энтр. Или из консоли ./file набрать.
Может ты чуть более подробно опишешь? Что у тебя не получается? Что оно пишет?
Аноним 08/12/14 Пнд 16:18:36 #332 №414629 
14180447163560.jpg
>>414626
Операционная система Windows 7, IDE NetBeans.
В NetBeans создаем файл .cpp, который относится к обыкновенному проекту. Предположим, файл должен вывести на экран "Hello world!".
Если я правильно понял, то файл компилируется(клавиша f9) и после этого он может быть запущен, в том числе и из консоли. Из консоли запустить не проблема. Мне интересен именно способ запуска файла в самом NetBeans'e. Куда надо нажать, чтобы он просто вывел мне "Hello world!". Если смотреть в меню "Run", то там есть прям команда Run File, но она не активна, даже после компиляции файла.
В документации указано, что нельзя запустить отдельный файл, но только в проекте с созданными исходниками, но у меня не такой проект.
Аноним 08/12/14 Пнд 16:20:10 #333 №414630 
>>414629
А, я тебя не правильно понял. В таком случае не знаю, я NetBeans'ом не пользуюсь. Может оно у тебя не сбилдилось, раз Run не активна?
Аноним 08/12/14 Пнд 16:21:32 #334 №414631 
>>414630
Да не, пишет же: COMPILE FILE SUCCESSFUL (total time: 1s)
Аноним 08/12/14 Пнд 16:39:53 #335 №414636 
>>414629
Настройки проекта смотри, скорее всего, надо создать run configuration или что-то в этом духе.
Аноним 08/12/14 Пнд 18:15:28 #336 №414658 
Подскажите, как пофиксить ошибку, связанную с vector (http://www.cyberforum.ru/cpp-beginners/thread1323464.html)? Полный код копипастить нет смысла, в посте по ссылке всё есть.
Через 2 дня сдавать проект, я уже не спал часов 20, на C++ писал последний раз года 3 назад, с векторами и ассоциативными массивами сталкиваться не приходилось, поэтому вполне вероятно, что упускаю какой-то банально простой момент.
Аноним 08/12/14 Пнд 18:36:15 #337 №414663 
>>414658
>строка 61, где проверка, что вектор не пустой?
И вообще что дебагер говорит?
Аноним 08/12/14 Пнд 18:42:23 #338 №414664 
>>414663
Дебагер говорит, что Vector<bool> erase iterator outside range. Может нужна какая-то более подробная информация - скажи где и что посмотреть.
Аноним 08/12/14 Пнд 18:44:22 #339 №414666 
>>414664
Дебагер еще говорит строку, в которой произошел креш, стректрейс и дает возможность просмотреть состояния всех объектов. В совокупности эта информация должна тебе дать намек, что не так.
Аноним 08/12/14 Пнд 19:28:42 #340 №414673 
14180561250150.png
>>414664
>>Vector<bool>
Никогда, НИКОГДА так не делай.
Аноним 08/12/14 Пнд 19:49:42 #341 №414678 
>>414664
Используй bitset, Люк.
Ну или std::deque<bool>
Аноним 08/12/14 Пнд 20:31:21 #342 №414704 
Аноны, можно обойтись без pow при возведении в степень или это единственный вариант?
Аноним 08/12/14 Пнд 20:34:25 #343 №414706 
>>414704
УМНОЖАЙ
@
В ЦИКЛЕ
@
ИЛИ ПРОСТО ПОДРЯД

Для малых значений степени банальное перемножение намного эффективней пова.
Аноним 08/12/14 Пнд 23:29:42 #344 №414733 
Пытаюсь разобраться в таблицах Qt.

QTableWidget, QTableWidgetItem - всё чётко, itemAt(), setText() и т.п. Насколько я понимаю, в Qt 5 это устарело.

QTableView, QStandardItemModel, QStandardItem - какая-то дикая анальщина, которая непонятно зачем нужна.

Собственно, как и что из этого лучше использовать?
Аноним 09/12/14 Втр 00:54:34 #345 №414757 
>>414733
QTableWidget - это уже готовый класс простой таблицы.
Тогда как QTableView, модель и остальная хрень нужна, если ты хочешь сделать что-то кастомное.
Аноним 09/12/14 Втр 01:28:07 #346 №414765 
>>414568
http://rutracker.org/forum/viewtopic.php?t=4347712
В самой раздаче книга на английском, а в комментариях есть ссылка на перевод.
Аноним 09/12/14 Втр 02:09:58 #347 №414770 
14180801983760.jpg
>>414765
Благодарю
Аноним 09/12/14 Втр 08:28:05 #348 №414787 
14181028851650.png
14181028851651.png
>>414757
Ну ладно. Подскажите ещё, как сделать ресайз всего окна под таблицу.

После заполнения таблицы я делаю
ui->table->resizeRowsToContents;
ui->table->resizeColumnsToContents;

ui->table->adjustSize; // QTableWidget
ui->tabWidget->adjustSize; // QTabWidget

adjustSize; // QWidget
и получается это.
Аноним 09/12/14 Втр 08:47:59 #349 №414789 
Товарищи, завтра начинаю учиться плюсам. С какой иде порекомендуете начать?
Аноним 09/12/14 Втр 08:56:13 #350 №414791 
>>414789
компьютер слабый и старый
Аноним 09/12/14 Втр 08:57:51 #351 №414792 
>>414791
QtCreator
Аноним 09/12/14 Втр 09:53:19 #352 №414804 
До чего надоела эта бесконечная возьня с костылями. Размер окна по контенту - самая базовая вещь, которая должна быть по умолчанию, но нет, зачем вам удобство, вот вам лучше костыли.
Аноним 09/12/14 Втр 09:53:51 #353 №414805 
>>414789
MS Visual Studio Express

Ворнинги проектов только ставь вручную каждый раз после создания проекта на 4 уровень, тупая студия по умолчанию на 3 уровень ставит.

Правой кнопкой мыши по названию проекта -> Properties -> C/C++ -> General -> Warning Level -> Level4 (/W4)

Только не ставь EnableAllWarnings (/Wall), неинформативным шлаком засрёт лог до небес.
Аноним 09/12/14 Втр 10:30:43 #354 №414820 
>>414805
Ящитаю, пора перестать рекомендовать Express, когда есть Community. Ньюфагу её отличия от Express не важны, но версия навырост, хуле, да и любое говно, зависящее от mfc/afx/whatever, найденное в интернетах, можно скомпилировать и запустить.
Аноним 09/12/14 Втр 10:32:01 #355 №414822 
>>414804
Базовая вещь? Можешь назвать хоть одну программу, которая окна подстраивает под размер контента? Я всё как-то обратные примеры встречал.
Аноним 09/12/14 Втр 12:59:25 #356 №414853 
Ребят, поясните по .lib/.dll/.h файлам у бублиотек.
Какие комбинации возможны?

Я понимаю, что .h - хэдер, .lib - библиотека для статической линковки, .dll - динамической. Но вот нахуя они идут одним пакетом и подключаются к проекту сразу все? Разве это не дублирует функционал? Разве нельзя подключить только dll, к примеру?
Аноним 09/12/14 Втр 13:26:06 #357 №414863 
>>414787
Если ты хочешь сделать, чтобы виджет таблицы ресайзился вместе с окном, то тебе нужен леяут. Если ты хочешь, чтобы и контент таблицы ресайзился вместе с окном, то у меня для тебя плохие новости. Если тебе ок, что все колонки будут иметь один и тот же размер, или если последняя колонка будет занимать собой все место - юзай это: http://qt-project.org/doc/qt-4.8/qheaderview.html#ResizeMode-enum Если тебе это не ок, и ты хочешь, чтобы колонки ресайзились относительно окна, и имели разный размер в процентном соотношении относительно размера окна - тебе придется городить невероятный пиздец. Я через это уже прошел, но код не скину, т.к. он под своеобразным NDA.
Аноним 09/12/14 Втр 13:27:55 #358 №414864 
>>414853
Они идут одним пакетом, шобы ты мог выбрать, что ты хочешь использовать. А хуле ты и статику, и динамику линкуешь в одном проекте, и хуле линковщик от этого не охуевает, это уже вопрос к тебе.
Аноним 09/12/14 Втр 15:02:38 #359 №414889 
>>414853
>.lib
2 разных типа с разными предназначениями, поэтому путаются начинающие
ситуация такая же как и "static" в си
Аноним 09/12/14 Втр 15:08:02 #360 №414892 
Кто хочет немного поломать себе голову и помочь мне одновременно: http://www.cyberforum.ru/cpp-beginners/thread1324531.html#post6962925
Где-то закралась ошибка в алгоритме Хаффмана (в бинарном дереве всегда присутствует элемент "я" с единичным вхождением, даже если файл состоит из последовательности без этого символа), а я туплю и не вижу её. Самый пикантный момент - логику алгоритма я не трогал, только добавил в конце кривую запись всего кода во внешний файл, что происходит намного позже основных действий по построению дерева и считывании содержимого файла.
Подскажите свежим разумом, аноны, где там косяк, я уже код этот видеть не могу.
Аноним 09/12/14 Втр 15:19:13 #361 №414896 
14181275536730.png
14181275536741.png
>>414863
Мне нужно
1. Ресайзнуть таблицу по содержимому, чтобы не было прокрутки - это работает.
2. Ресайзнуть окно по новому размеру таблицы - не работает, остаётся прокрутка, пока не растянешь окно вручную.
По коду вроде видно. Но получается то, что на скрине.

Насчёт лайота поясни, я сделал горизонтальный под таблицей и поместил её в него, ничего не изменилось. adjustSize( ) всего окна не работает.

Код:
ui->table->resizeColumnsToContents( );
ui->table->resizeRowsToContents( );

adjustSize( );
Аноним 09/12/14 Втр 15:33:19 #362 №414897 
>>414896
>2. Ресайзнуть окно по новому размеру таблицы - не работает, остаётся прокрутка, пока не растянешь окно вручную.
Это ты должен сам сделать. В целом ничего трудного. По горизонтали берешь размеры всех колонок + размеры отступтов layout margins между виджетом и краем окна маржин можно убрать вообще, тогда виджеты вполтную будут. По вертикали делаешь тоже самое, только вместо размеров колонок берешь размеры строк. Полученные размеры и будут те самые размеры, которые ты хочешь. Плюс ко всему выключаешь возможность ресайза окна если тебе это нужно вручную.

>Насчёт лайота поясни
Забудь. То я не до конца понимал ситуацию.
Аноним 09/12/14 Втр 15:40:23 #363 №414899 
>>414892
Что значит "элемент "я""?
Аноним 09/12/14 Втр 15:54:35 #364 №414902 
>>414899
Это значит, что в бинарном дереве есть узел "я-1" - т.е. данный символ имеет единичное вхождение в исходную строку.
Не знаю, как тебе объяснить - вот есть строка "aaabbcdddd". Для неё корневыми узлами будут a-3, b-2, c-1, d-4.
В моём случае, при любой исходной строке ("123454321", "1", "битард" и т.д.) всё равно присутствует этот злополучный символ, с единичным вхождением. Откуда он там - в этом суть вопроса.
Скомпилируй да запусти, код есть в теме по ссылке, станет нагляднее, если хочешь помочь.
Аноним 09/12/14 Втр 16:00:08 #365 №414904 
>>414902
Дура вы дядя Степа. У тебя проблема со чтением файла. http://pastebin.com/seDPD47w - вот быстрофикс.
sageАноним 09/12/14 Втр 16:02:51 #366 №414906 
14181301718250.gif
>>414902
в крестах при неопределённости используется эвристическая компиляция
при этом вероятности всех возможных выборов не нулевые
иными словами, один и тот же компилятор крестов может производить разные машинные коды для одной и той же программы
Аноним 09/12/14 Втр 16:16:25 #367 №414913 
>>414904
Спасибо, добрый человек, и правда работает.
>>414906
>эвристическая компиляция
Это что ещё такое и зачем, в двух словах?
Вообще, привык к C#, и после всех его ништяков (а также плюшек студии и решарпера) писать на плюсах было мучительно. А помню когда-то на первом курсе, переход с Паскаля на обычный Си казался лютым апгрейдом.
Аноним 09/12/14 Втр 18:30:05 #368 №414955 
>>414822
IrfanView? mplayer?
Аноним 09/12/14 Втр 19:32:29 #369 №414992 
>>414897
>По горизонтали берешь размеры всех колонок + размеры отступтов layout margins между виджетом и краем окна
То есть писать под свою ос и её тему оформления? На винде расстояния между виджетами вообще бешенные становятся. Или где-то константы есть?
Аноним 09/12/14 Втр 19:37:49 #370 №414993 
>>414992
Батенька, куда вы летите? Есть же http://qt-project.org/doc/qt-5/qheaderview.html Берешь размеры секций и пляшешь джигу.
Аноним 09/12/14 Втр 19:42:27 #371 №414994 
>>414993
Кстати не забывай, что для вертикали тебе так же надо будет добавить высоту горизонтального хидера. И такая же байда для горизонтали только уже с шириной. Опять же все это легко можно получить.
Аноним 09/12/14 Втр 19:45:46 #372 №414996 
>>414994
Но вообще не исключаю, что тебе придется какие-то хардкорные константы еще добавить специально под каждую платформу. Кутя только кажется кроссплатформенной. Но как-только тебе нужно сделать что-то более необычное, чем ляпнуть пару дефолтных кнопочек, начинается ад и содомия. А так же готовься встречать тонны багов.
Фриланс и плюсы Аноним 09/12/14 Втр 21:38:48 #373 №415053 
Потсоны, в связи с падением рубля всерьез подумываю о сабже. При этом конечно же понимаю, что на плюсах это очень сложно. Поэтому есть хитрый план изучить питон и ебашить приложения на этих двух языках, сочетая быстроту разработки и быстродействие приложений.
Норм придумал? Жду комментариев анона.
Аноним 09/12/14 Втр 22:18:31 #374 №415065 
14181527115530.jpg
>>414789
Текстовый редактор и g++?
Аноним 09/12/14 Втр 22:25:27 #375 №415067 
>>415053
Ничего сложного. У меня, к примеру, заказов хватает.
Тебя не заебет писать обертки для пистона?
Аноним 09/12/14 Втр 22:28:38 #376 №415069 
Привет, анон. Суть такова.
Система -- Windows, среда разработки -- Qt Creator.
При попытке воспользоваться некоторыми функциями pthread вылетают ошибки вот такого типа:

ошибка: undefined reference to '_imp__pthread_mutex_trylock'

Почему это происходит? Каким образом разрешить эту проблему?
Аноним 09/12/14 Втр 22:30:06 #377 №415071 
>>415067
>заказов хватает
На чем специализируешься?

>обертки для пистона?
Я планирую основную часть писать на пайтоне, а узкие места реализовывать на плюсах.
Аноним 09/12/14 Втр 22:30:23 #378 №415072 
>>415069
Не писать на pthread'ах под ШИНДОШС.
Аноним 09/12/14 Втр 22:31:20 #379 №415073 
>>415067
Где берешь заказы? Какой у тебя опыт? Какого-рода заказы, разноплановые ли?
Дай в пример одно из сделанных интересных.
Аноним 09/12/14 Втр 22:31:49 #380 №415074 
>>415072

А если конкретнее? Очень много кто, судя по гуглингу, таки на них под винду пишет -- и вряд ли он это делает без функции trylock или unlock.
Аноним 09/12/14 Втр 22:36:22 #381 №415080 
>>415071>>415073
>На чем специализируешься?
Обычно ковыряюсь с какими-то системными задачками. Дровишки написать, под embedded поковыряться. Но и гуйци пилю бывает. В общем если интересно - беру.

>>415073
>Где берешь заказы?
oDesk
>Какой у тебя опыт?
Вообще примерно три года. На oDesk'е уже полтора года.
>Дай в пример одно из сделанных интересных.
Дрова писал. Сейчас под сервера на фряхе пишу сбор статистики из логов. Еще с embedded Linux ковыряюсь.

>>415074
Сейчас же есть С++11/14. Вот его и используй, чо. А если ты на Сишке пишешь, то хз даже. Я не ковырялся с pthread'ами под виндой. Может mingw/cygwin/etc обновить надо?
Аноним 09/12/14 Втр 22:37:38 #382 №415082 
>>415074
Вообще дай небольшой кусок кода, я попробую у себя сбилдить. Я так-то mingw пользуюсь.
Аноним 09/12/14 Втр 22:47:15 #383 №415085 
>>415082
Давай по-простому:

#include <pthread.h>

int main()
{
pthread_mutex_t _mutex;
pthread_mutex_trylock( &_mutex );

return 0;
}
Аноним 09/12/14 Втр 22:48:54 #384 №415086 
>>415082

Алсо, пишу под C++, просто не знаю каких-то объектных аналогов pthread кроме QThread из Qt. В тестовом попросили не использовать нестандартные библиотеки, поэтому его юзать не хочется.
Аноним 09/12/14 Втр 22:49:02 #385 №415087 
>>415085
Билдится нормально. У меня MinGW 4.9.1. Брал от седа - http://mingw-w64.sourceforge.net/
Аноним 09/12/14 Втр 22:50:33 #386 №415088 
>>415086
Ну дык треды из С++11/14 самый что ни на есть стандарт. Попробуй :)
Аноним 10/12/14 Срд 01:06:30 #387 №415138 

Есть один код, программач:

#define LOCK_RECORD_TIME 2 // Seconds

class RecordExceptionTimeLock {
private:
int _lockTime;

public:
inline RecordExceptionTimeLock(int time) : _lockTime(time) {}

inline int lockTime(void) {
return LOCK_RECORD_TIME;
}
};

Объясни мне, зачем он вообще нужен? Почему нельзя просто кидать int a = LOCK_RECORD_TIME, не создавая дополнительную функцию?

PS: почему не работает тэг code?
Аноним 10/12/14 Срд 01:17:04 #388 №415142 
>>415138
То есть ты спрашиваешь для чего здесь геттер?
Аноним 10/12/14 Срд 01:22:47 #389 №415143 
>>415142
Я в первый раз сталкиваюсь с исключениями, так что я вообще не понимаю, зачем создан отдельный класс.

Noob me, но что такое геттер я тоже не понимаю в данном контексте.
Аноним 10/12/14 Срд 01:43:09 #390 №415151 
>>415143
>зачем создан отдельный класс.
Возможно планировалось расширить.функциональность объекта по этому классу. То есть помимо возвращения значения LOCK_RECORD_TIME он ещë что-то бы делал.

>что такое геттер я тоже не понимаю в данном контексте.
В данном случае то что напоминает геттер, это функция lockTime, которая по неведомой мне причине, вместо значения _lockTime возвращает константу LOCK_RECORD_TIME.


Аноним 10/12/14 Срд 10:37:27 #391 №415218 
Для Qt5 вообще есть дизайнер как отдельное приложение? Он всегда был удобнее.
Аноним 10/12/14 Срд 10:52:12 #392 №415222 
>>414791
geany! базарю еще захочешь, все плюшки которые нужны есть.
sageАноним 10/12/14 Срд 11:23:05 #393 №415225 
14181997851450.png
>>415218
Перестань долбиться в глаза.
Аноним 10/12/14 Срд 11:28:49 #394 №415229 
>>415225
Нашёл через locate /usr/bin/designer, даже не qtdesigner
Отличное место и название для него нашли.
sageАноним 10/12/14 Срд 13:02:08 #395 №415238 
>>415229
>Подразумевает, что дизайнер странно называть designer.
>Подразумевает, что /usr/bin - странное место для бинарников.
Ну ты понял, да?
Аноним 10/12/14 Срд 15:17:34 #396 №415270 
>>412444
>ICU можно пересобрать только с русиком или заменить заглушкой
Какой заглушкой?
sageАноним 10/12/14 Срд 15:27:04 #397 №415275 
14182144246260.jpg
>>415270
Аноним 10/12/14 Срд 15:32:09 #398 №415276 
>>415080
>Обычно ковыряюсь с какими-то системными задачками. Дровишки написать, под embedded поковыряться. Но и гуйци пилю бывает. В общем если интересно - беру.
Расскажи плз, что почитать поделать, чтобы на нужный для фриланса уровень выйти?
Аноним 10/12/14 Срд 15:45:36 #399 №415284 
>>415276
Я до принятия заказов ничего этого и не знал разве что гуйцы умел пилить на Qt. Я говорю заказчикам, что не знаю чего-то, что им нужно, но мне это дохуя интересно и вообще. Понятное дело, что не всегда прокатывает, но главное себя нормально поставить перед заказчиком и действительно быстро учиться.
Ну вообще естественно, что сам язык ты должен знать более менее хорошо.
Аноним 10/12/14 Срд 15:47:30 #400 №415285 
>>415270
Пустой dll
https://github.com/neolit123/dummy_icu
Аноним 10/12/14 Срд 19:44:25 #401 №415405 
Привет, плюсач. Я питерский школьник-недоолимпиадник, прошел на региональный этап, что не было неожиданностью, потому что это было просто, как и в первый раз. По сему у меня есть месяцок на подготовку, и я решил перерешать прошлогодний тур. Есть там одна задачка, суть которой сводится к вычленению из строк чисел и последующему их сравнению (вообще даже числа не надо выделять, лучше просто сравнить строки, ибо числа там могут быть много больше 10^20). Задачку эту я еще в прошлом году решил, но на паскале. Но из подгузников надо вылезать, что как маленький, поэтому я уже целых две недели стараюсь кодить на новых для меня плюсах. Подозреваю, то выдаю лютый говнокод, но мне нравится. В связи с этим я пришел сюда спросить совета на счет самого простого и надежного способа работы со строками, ибо я переписывал программу уже раза три, и каждый раз были жуткие проблемы. И еще, пакет algorithm, он должен меня избавить от вечного переписывания пузырька, обмена элементами и прочих прелестей олимпиадного программирования, но я совсем не понял как. На всяких ccpreference вроде есть синтаксис, но у меня все равно не получается
Аноним 10/12/14 Срд 20:01:04 #402 №415419 
помогите завтра зачет , с меня няши:
1.Списки
А) реалізувати двозвязний список
Б) зчитати файл цілих чисел(n>100) і зберегти у списку у зростаючому порядку
В) реалізувати процедуру пошуку числа що вертає true or false ( число існує чи ні)
2. Графи
А) реалізувати функцію обрахунку діаметра графа (найдовший маршрут без циклів).
Програма
Опис ( алгоритм )
Демонстрація роботи ( скріншоти )
Аноним 10/12/14 Срд 20:11:41 #403 №415429 
>>415405

Какие именно у тебя возникли проблемы со строками?

>>415419
Тебя на Донбассе ребята заждались.
Аноним 10/12/14 Срд 20:14:05 #404 №415431 
>>415429
думаешь?
Аноним 10/12/14 Срд 20:16:21 #405 №415433 
>>415429
> Какие именно у тебя возникли проблемы со строками?

Судя по всему, я их даже считать толком не могу. Со всеми этими переводами строк и т.п. У меня уже после считывания все херится и превращается в неизвестно что.
Аноним 10/12/14 Срд 20:42:10 #406 №415450 
>>415433

Братюнь, давай детальнее. Код покажи, расскажи, что хотел сделать. Подозреваю, что речь идет об управляющих символах строк, в которых ты путаешься. Ну, вот, например, сразу нагугленная табличка http://studlab.com/news/konstanty/2012-08-01-460 Ты читаешь из файла, так? Ну вот тоже какая-то ссылка на тему http://kvodo.ru/urok-10-1-rabota-s-tekstovyimi-faylami-v-c.html
Аноним 10/12/14 Срд 20:51:11 #407 №415453 
>>415450
Нет. Я читаю не из файла на этот раз. Был код через getline, но мне нужно посимвольное считывание.
[CODE]#include <iostream>
#include <string>
#include <algorithm>

using namespace std;

int main(){
int n;
string s;
string sch[1000];
cin >> n;
for (int i = 1; i <= n; i++){
getline(cin, s);
for (int j = 1; j <= s.length(); j++){
if (s[j] > 48) {
sch.operator+=(s[j]);
}
}
}
for (int i = 1; i <= n; i++){
cout << sch;
}
return 0;
}[/CODE]
Вот это во--первых почему-то читает n-1 строку, предполагаю, что где-то надо впихнуть аналог паскалевского readln;
Аноним 10/12/14 Срд 21:08:58 #408 №415456 
>>415419
>>що вертає
повертає
Аноним 10/12/14 Срд 21:09:33 #409 №415457 
>>415453
Зачем тебе посимвольное чтение?
Аноним 10/12/14 Срд 21:15:38 #410 №415460 
>>415457
Мне надо отбросить все, кроме чисел. По-моему, так проще, чем потом ебаться со строками.
Аноним 10/12/14 Срд 21:21:10 #411 №415463 
>>415460
Мб просто проверку на содержание нечисловых символов?
Аноним 10/12/14 Срд 21:23:41 #412 №415464 
>>415463
Вот сейчас не понял. Я нахожусь в положении аборигена, который, извращаясь строил программы из говна, палок и рам велосипедов, орудуя отверткой без ручки, а ты мне тут такие вещи рассказываешь. У меня культурный шок. Как это делать?
Аноним 10/12/14 Срд 21:25:39 #413 №415465 
>>415464
Да все гораздо проще: проверить каждый символ у уже введенной строки на принадлежность к определенному диапазону. Если для каждого выполняется, то ок.
Аноним 10/12/14 Срд 21:26:55 #414 №415466 
14182360155310.jpg
Поясните за книгу "Алгоритмы на C++. Фундаментальные алгоритмы и структуры данных." - годнота?
Пикрелейтед
Аноним 10/12/14 Срд 21:27:33 #415 №415467 
>>415465
Хорошо. А как тогда отбросить те, что не цифры? И вдогонку, string s[1000] - это адекватное объявление массива строк?
Аноним 10/12/14 Срд 21:32:55 #416 №415470 
>>415466
За эту хз. Но потсоны советуют Кормена. Не прогадаешь, базарю.
>>415467
Если не цифры, то на мой взгляд логичнее выводить сообщение об ошибке. Ну и мб просить ввести число еще раз.
Ну вот смотри. Если ты напишешь int i = 56q1;, компилятор же не сделает вид, что не заметил букву. Он тебе скажет, что у тебя ошибка.
Аноним 10/12/14 Срд 21:36:12 #417 №415472 
>>415467
s[1000] - да. Но лучше вектор использовать
vector<string> svec;

Я не понял, нахуй тебе 1000 строк, если тебе нужно два числа сравнить.
Аноним 10/12/14 Срд 21:36:32 #418 №415473 
>>415470
Ты мыслишь верно, только забыл, что это олимпиадная задача и проверяет меня система автоматических тестов. И суть задачи на 70% в том, чтобы вычленить из разнокалиберных строк лишь числовые данные. Вспомнил, как проигрывал, когда ребята за соседними компуктерами начинали писать в коде, который будет запускаться на тестах, "vvedite a..."
Аноним 10/12/14 Срд 21:40:12 #419 №415474 
>>415473
То есть стоит задача из строки "33ололо5ава" сделать "335" и сравнивать ее с другими?
Аноним 10/12/14 Срд 21:44:11 #420 №415475 
>>415474
Да. Если быть точным, отсортировать эти значения
>>415472
> Я не понял, нахуй тебе 1000 строк, если тебе нужно два числа сравнить.

Условие вкратце: есть тысяча строк, гарантированно содержащих номер и еще символы (всего не более 100). Мне надо посчитать и вывести те номера, которые встречаются до 5 раз.
Аноним 10/12/14 Срд 21:56:57 #421 №415477 
>>415475
Я понял, что нужно сравнить две строки.
Короче, нет времени объяснять, я тут накатал, мб поможет:
http://ideone.com/8QmAGs
Аноним 10/12/14 Срд 21:59:11 #422 №415478 
>>415477
В любом случае спасибо. А олимпиаду мне, видимо, придется на старом-добром писать
Аноним 10/12/14 Срд 22:44:12 #423 №415491 
>>415478
чтобы выкинуть лишние символы из строки, юзай stable_partition с нужным предикатом:
http://ideone.com/8QmAGs
Аноним 10/12/14 Срд 23:04:50 #424 №415500 
>>415491
Из этого кода можно сделать предикат для сравнения двух строк, заменив выводы на консоль на возврат true или false.
Отсортировать вектор строк с помощью sort и предиката для сравнения строк.
Используя unique_copy можно получить все уникальные номера. Пройтись по ним в цикле, применять equal_range, получать пару итераторов начала и конца диапазона одинаковых элементов, и вычитая один итератор из другого, получать количество элементов такого номинала. Если количество меньше 5 - выводи.
Аноним 10/12/14 Срд 23:11:25 #425 №415503 
>>415500
Бля, я слегка переусложнил.
На самом деле предикаты не нужны тут. Если все лишние символы выкинуты, можно использовать == и < для строк. Они уже реализованы в std и будут работать как надо, если длина строк одинакова (по алфавиту, а это как раз подходит). Если не одинакова - сравниваешь size().
Короче просто используешь перечисленные алгоритмы.
Аноним 11/12/14 Чтв 01:06:48 #426 №415533 
>>415475
>Мне надо посчитать и вывести те номера, которые встречаются до 5 раз.
Легче всего это сделать с regex'ами. Если нельзя, то просто из строк выкидывай все символы, что не числа, потом делай конверт оставшейся строки которая будет содержать только числа в число, ну а дальше фигня вопрос посчитать, встрачаются ли какие-то числа до 5-и раз.
Аноним 11/12/14 Чтв 02:54:44 #427 №415564 
Нужно извлечь xml (изначально excel) из zip архива, и в дальнейшем написав свой парсер, распарсить данные. Взял zlib для распаковки и я так понял, что можно извлекать информацию, либо во временный файл, либо в буфер. Поясните, как в моем случае лучше делать ? И подходит ли zlib, или лучше libzib ?
Евграфий 11/12/14 Чтв 03:03:33 #428 №415568 
Помогите решить 2 задачи, нужно в шарагу сдать, но у нас в учебниках и рядом подобного нету.
1)Разработать подпрограммы работы с приоритетной очереди. установление
запросов в очередь выполняется подряд в конец очереди, снятия - по
приоритетом. Очередь организована в массиве и в списке. приоритет:
максимальное значение числового параметра, при совпадении параметров -
FIFO.
2)Заменить все символы c1 в строке s, начиная с позиции n,на строку s2.(реализовать функцией StrCChar(s,c1,s2,n).
Всем добра.
Аноним 11/12/14 Чтв 03:32:43 #429 №415569 
>>415564
zlib/contrib/minizip - для начала тебе за глаза хватит
Аноним 11/12/14 Чтв 03:50:16 #430 №415571 
>>415569
а как zlib >>415569
как лучше работать с данными, через временный файл или читать из буфера и обрабатывать, исходя из моей задачи ?
Аноним 11/12/14 Чтв 04:12:15 #431 №415572 
>>415571
>>415571
>как лучше работать с данными, через временный файл или читать из буфера и обрабатывать, исходя из моей задачи ?
ну ёба, это уже зависит от того, какой парсер xml ты собираеся прикручивать. Если самопальный велосипед, то мо выбор - буфер, если что-то промышленное, то оно наверняку амеет работать со стримами - будет на лету распаковывать необходимые куски через обертку, которую тызапилишь над unzReadCurrentFile()
Аноним 11/12/14 Чтв 05:18:51 #432 №415575 
Зачем нужен С++, если есть D?
Аноним 11/12/14 Чтв 08:48:28 #433 №415593 
Это нормально, что методы определены в заголовочном файле? И почему не возникает ошибки?
Аноним 11/12/14 Чтв 08:53:57 #434 №415594 
>>415593
Инлайновые?
sageАноним 11/12/14 Чтв 08:56:59 #435 №415595 
>>415593
А теперь объясни мне, схуев бы должна возникать ошибка?
Аноним 11/12/14 Чтв 08:58:59 #436 №415596 
>>415593
А почему должна? Разбиение на хедер и реализацию это чисто для людей, конпелятору похуй. В некоторых языках, конечно, так делать запрещают, но в целом ошибки в этом нет.

Я не сказать, что спец в этом деле, но на мой взгляд в хедере логично определять всякие геттеры-сеттеры и прочие стандартные функции, которые реализуются в одну строку. Мб имеет смысл там же реализовывать конструкторы и деструкторы, чтобы реализация оставалась специально для сложной логики, но тут пусть более опытные ребята меня поправят.
Аноним 11/12/14 Чтв 09:00:28 #437 №415597 
Кстати, раз пошла такая пьянка -- расскажите про инлайн. Чем хорош, чем плох, кроме обязательного объявления в хедере? Довольно часто натыкаюсь на инлайновые конструкторы, когда смотрю примеры, меня же никто так делать не учил.
sageАноним 11/12/14 Чтв 09:04:54 #438 №415598 
>>415596
Ну хуй знает, сеттер, геттер, минеттер, скакать потом аки хохол между файлами. Уж запихал всю логику в .cpp, а интерфейс оставил в .h, и чувствуешь себя сухо и комфортно. Благо, нормальные IDE позволяют генерить пустые заготовки реализации функций из объявления в хедере.
Но вообще, это вопрос спорный. В том же Qt, например, делают как ты сказал, а они, ясен хуй, не пальцем деланы. Но я таки придерживаюсь другой позиции, ибо объективных причин пихать реализацию в хедер не встречал.
sageАноним 11/12/14 Чтв 09:05:54 #439 №415599 
>>415597
В гугл/к преподу. Не твой личный репетитор.
Аноним 11/12/14 Чтв 09:08:08 #440 №415600 
>>415598
Подставляемые функции повышают производительность, не?
sageАноним 11/12/14 Чтв 09:08:59 #441 №415601 
>>415600
>>415599
Аноним 11/12/14 Чтв 09:09:08 #442 №415602 
>>415599
Странный ответ под вопросом про определение методов в заголовке :33
sageАноним 11/12/14 Чтв 09:09:52 #443 №415603 
>>415601
Алсо, реализованная в хедере функция не обязана быть инлайновой.
sageАноним 11/12/14 Чтв 09:11:09 #444 №415606 
>>415602
Нет, совершенно адекватный. Все это есть в статьях, блогах, учебниках, в голове у препода, если он не конченый 70-летний дебил, которого держат из жалости.
Аноним 11/12/14 Чтв 09:13:05 #445 №415608 
>>415606
Неужели в треде был задан хоть один вопрос, ответа на который нету

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

?
sageАноним 11/12/14 Чтв 09:15:35 #446 №415609 
>>415608
Много вопросов, которые тяжело нагуглить (часто из-за формулировки). На твой же вопрос ответ в первой ссылке с гугла по запросы "inline c++". Все, иди на хуй, заебал засирать тред своими долбоебскими первокурсными проблемами. С этим ЕГЭ совсем дегенератов стали выпускать.
sageАноним 11/12/14 Чтв 09:15:59 #447 №415610 
>>415609
>по запросу
фикс
Аноним 11/12/14 Чтв 09:16:49 #448 №415611 
>>415594
обычные методы класса

>>415595
> схуев бы должна возникать ошибка?
может потому что метод определенный в хедере определяется в каждом файле в который этот хедер инклудится? разве нет?
sageАноним 11/12/14 Чтв 09:21:15 #449 №415614 
>>415611
>может
А может и нет. Так что в твоей формулировке (без уточнения) вопрос не имеет смысла. Алсо, если это метод класса, то даже при включении в разные файлы проблемы не будет, можешь проверить.
Аноним 11/12/14 Чтв 09:31:27 #450 №415620 
>>415593
>When a function is defined inside the class definition, it is implicitly inline. Compilers usually mark those functions as 'weak symbols'. The linker then gets all translation units and tries to resolve the symbols. Weak symbols will be dropped by the linker if needed (i.e. if the symbol is already defined somewhere else).
Аноним 11/12/14 Чтв 09:40:55 #451 №415623 
>>415620
У меня кстати около 70 одинаковых warning'ов в методе определенном в хедере. То есть получается такой метод в хедере конеплируется каждый раз, а просто при линковке нет проблем.
Аноним 11/12/14 Чтв 11:23:59 #452 №415645 
>>415533
>Легче всего это сделать с regex'ами.
Как среди массива строк с помощью регулярок определить строки, содеражащие до пяти раз один и тот же номер? Мне кажется, ты не понимаешь, о чем речь

>потом делай конверт оставшейся строки
>>415405
>числа там могут быть много больше 10^20
Аноним 11/12/14 Чтв 11:33:40 #453 №415647 
>>415598
>ибо объективных причин пихать реализацию в хедер не встречал.
>>415600
>Подставляемые функции повышают производительность, не?
>>415599
>В гугл/к преподу. Не твой личный репетитор.
Обосрался и чтобы скрыть этот факт, отправляет в гугл.
Аноним 11/12/14 Чтв 11:34:40 #454 №415648 
>>415623
>конеплируется каждый раз
преконпелятор отменили?
Аноним 11/12/14 Чтв 12:06:19 #455 №415657 
>>415648
какой еще преконпелятор?
sageАноним 11/12/14 Чтв 12:29:31 #456 №415665 
>>415647
Нет, студентишка, это ты обосрался. Производительность повышается инлайном, а не занесением в хедер. Хотя, дебилу вроде тебя разница вряд ли заметна.
Аноним 11/12/14 Чтв 12:39:49 #457 №415666 
>>415665
Мне так нравится, когда уже один раз обосравшийся дебил срется второй раз подряд, даже не успев поменять штанишки.

ИТТ уже постили:
>>415620
>>When a function is defined inside the class definition, it is implicitly inline.
sageАноним 11/12/14 Чтв 12:50:33 #458 №415668 
>>415666
Гуманитарий обосрался с терминологией, но продолжает считать, что обосрался кто-то другой, найс. Попробуй еще, когда научишься строго выражать мысли.
Аноним 11/12/14 Чтв 12:57:00 #459 №415669 
>>415668
Можешь дальше сидеть в луже собственного говна и говорить другим, что воняет от кого-то другого
sageАноним 11/12/14 Чтв 13:08:21 #460 №415671 
>>415669
Излюбленный прием обосравшихся - троллинг тупостью. Еще и спойлер поставил зачем-то.
А теперь смотри, объясняю для самых маленьких. Условие помещения реализации метода в хедер не является обязательным для инлайновости функции. Это означает, что добиться инлайновости (и, как следствие, повышения производительности) можно, например, добавив "inline" перед объявлением, при этом оставив реализацию в .cpp. Таким образом, тезис "помещение реализации метода в хедер нужно для того, чтобы заинлайнить этот метод" является неверным. Именно поэтому нет причин включать реализацию в хедер, инлайновости можно достичь и без этого. Доперло? Если нет, то после курса алгебры или матана (или что у вас там сейчас читают) должно дойти.
Аноним 11/12/14 Чтв 14:25:20 #461 №415684 
Можно ли запилить Wt библиотеку с помощью Qt Creator на OSX 10.9.5 ?
sageАноним 11/12/14 Чтв 14:31:58 #462 №415685 
>>415684
Что ты подразумеваешь под словом "запилить"? В оригинале это значит "сделать, создать". Не думаю, что ты можешь создать Wt, она уже создана.
Аноним 11/12/14 Чтв 14:35:04 #463 №415686 
>>415685
собрать библиотеку
Аноним 11/12/14 Чтв 14:40:50 #464 №415687 
>>415470
>За эту хз. Но потсоны советуют Кормена. Не прогадаешь, базарю.


пробовал кормена читать, и чото голову поломал на всем этом псевдокоде, есть где-нитьбудь статейки или что, где по хардкору поясняют как читать псевдокод из его книги и не вывернуть себе мозги?
Аноним 11/12/14 Чтв 14:46:39 #465 №415688 
>>415645
Тьфу. Не до конца понял ситуацию.
Лучше не пытаться помогать, когда у самого голова забита проблемами, лол.
sageАноним 11/12/14 Чтв 14:53:10 #466 №415690 
>>415686
Ну так попробуй и узнаешь, мы что ли за тебя это должны делать?
Аноним 11/12/14 Чтв 14:55:20 #467 №415691 
>>415671
>>415671
>добавив "inline" перед объявлением, при этом оставив реализацию в .cpp
но инлайниться такая функция будет только внутри этого .срр потому что внешние вызовы не знают как она реализована (всякие link-time codegeneration и pgo оставим в стороне - оно уж слишком компилерспецифик)
> (и, как следствие, повышения производительности)
тоже не всегда - я однажды проинлайнил всё подряд, и стало в 1.5 раза медленней потому что основной цикл перестал влезать в L1 кэш
Аноним 11/12/14 Чтв 15:10:18 #468 №415694 
Я сильно боюсь какие-либо заявления делать, но неужели баг компилятора/библиотек? Программа на Qt 5.3.2, GCC 4.9.1, Linux amd64. Читаем файлы на примитивном ассемблере, транслируем во внутреннюю структуру и исполняем. На этапе трансляции появился плавающий баг, когда код из одних и тех же файлов, никак не меняющихся со временем, то транслируется корректно, то возникают ошибки. Ошибки в тупом сравнении QString с константными строками. Причём только в release-билде, запускаемом не из под QtCreator, в остальных случаях всё хорошо. Более того, добавил не влияющий на происходящее код (вывод в консоль строк вида "упало в такой-то строке", какие-либо переменные при этом не трогаются), и баг пропал, убираю этот код и пересобираю -- опять появляется.
sageАноним 11/12/14 Чтв 15:11:22 #469 №415696 
>>415691
>только внутри этого .срр
Ок, это я не учел, признаю.
>не всегда
А никто и не говорил, что всегда. Мое мнение - если это не сверхнагруженное приложение с миллионом вызовов в секунду, запускаемое на первом пентиуме, то нечего хуйней заниматься. Компилятор сам умеет оптимизировать и инлайнить то, что нужно и можно.
sageАноним 11/12/14 Чтв 15:13:06 #470 №415697 
>>415694
У тебя есть три варианта: скинуть полный код (или хотя бы рабочий, компилирующийся фрагмент), подарить нам по хрустальному шару, либо пойти на хуй.
Аноним 11/12/14 Чтв 15:45:29 #471 №415701 
Компилю я свой проект в очередной раз после добавления класса. А компилятор не компилит файл библиотечный memory. Раньше всё было нормально, а теперь он говорит:

error C2825: '_Alloc': must be a class or namespace when followed by '::' d:\useful\vs12\vc\include\memory

Я могу выложить код метода, комментирование которого убирает это, но я не знаю, как его чтение может помочь.
sageАноним 11/12/14 Чтв 15:50:40 #472 №415702 
>>415701
Выкладывай полный код.
Аноним 11/12/14 Чтв 15:57:13 #473 №415705 
>>415702
code.re/6X1
sageАноним 11/12/14 Чтв 16:09:39 #474 №415706 
>>415705
Блять, где вы эти обоссанные сайты находите. Не судьба проект в архив и на ргхост? Нет, будем есть говно. А гугл между тем говорит, что нечто подобное бывает при явном указании типа в шаблонах (например, swap<int>(a, b); вместо swap(a, b);). Убери везде явное указание типа, где это возможно. Без полного кода проекта больше ничего сказать нельзя.
Аноним 11/12/14 Чтв 16:13:13 #475 №415707 
14183035939680.png
>>415697
Были серьёзные сомнения, что кто-то захочет копаться в этом говнокоде. Ну да попробуем.
http://rghost.net/private/59573729/50e26695e0f3f79181f0c69781cb253d
Черти зарылись в SMachine::ParseSourceCode.
Алсо, только что пересобрал на соседней машине с виндой, используя 32-битный gcc 4.8.2 -- работает без проблем.
Более того, оно начинает работать без ошибок, даже если добавить строку как на пике. Больше сотни раз обновлял -- ни одной ошибки. Убираю строку, пересобираю -- за ту же сотню чтений файлов 40-50 ошибок. Как оно могло повлиять? Пиздец.
Аноним 11/12/14 Чтв 16:17:03 #476 №415708 
>>415706
Всё ок, я нашёл ошибку. Она была совсем очевидной, извини, что дёргал.
Неправильный конструктор для std::shared_ptr<sf::Text>, забыл написать (new sf::Text(PARAM_LIST), написал вместо этого (PARAM_LIST)
Аноним 11/12/14 Чтв 16:25:29 #477 №415710 
>>415690
пробовал, может быть кто - то уже делал? чтобы прекратить мои анальные мучения
sageАноним 11/12/14 Чтв 16:29:47 #478 №415712 
>>415710
Конечно никто не пробовал собирать это сырое почти не работающее говно на маке. Не тот контингент.
В чем проблема то, что не получается? А вообще, лучше не связывайся с этой парашей, я ковырял ее, знаю. На практике половина не работает.
Аноним 11/12/14 Чтв 16:48:24 #479 №415722 
>>415712
проблема в том что отсутствуют boost библиотеки которые необходимы для сборки. Ладно попробую на винде, может быть там все веселее. Тем более у меня версия оси больше чем в мануале Wt. Если на винде не влетит то брошу это говно.
sageАноним 11/12/14 Чтв 16:53:37 #480 №415725 
>>415707
Пинус х32, ошибка действительно есть. Забавно. Будет над чем поковыряться вместо работы, лол.
sageАноним 11/12/14 Чтв 17:37:27 #481 №415733 
>>415725
Короче хуй проссышь. Баг пропадает, если всунуть в функцию операцию вывода в консоль любого текста, причем только qDebug, std::cout не влияет (с другой стороны, если выводить tokens[0] через std::cout, то баг опять же пропадает).
В общем, похоже, действительно какой-то баг GCC. Надо бы покопаться в ашшемблере, но я в него не умею, да и вангую там тысячи и десятки тысяч строк.
sageАноним 11/12/14 Чтв 17:39:50 #482 №415734 
>>415733
Алсо, ошибка происходит в ветке "inc", вот тут: inst.Register = tokens[1].toInt(&ok); (узнал посредством добавления разных состояний для разных веток). То есть проблема не со сравнением строк, а с преобразованием строки в число. А уж почему так происходит - хуй поймет.
Аноним 11/12/14 Чтв 17:51:28 #483 №415738 
>>415733>>415734
Спасибо. Придётся, похоже, пока это поделие костылями обмазывать, ибо на общение с разработчиками gcc у меня мозгов не хватит, да и не факт, что он виновен.
Аноним 11/12/14 Чтв 18:08:49 #484 №415741 
>>415738
Гооооооосподи Иисусе, вот я дебил, пиздец. Забыл проинициализировать переменную ok, вписав туда true. Странно, что оно вообще работало.
>>415734
Спасибо за наводку, пока бегал глазами вокруг того блока кода, дошло.
sageАноним 11/12/14 Чтв 18:11:04 #485 №415742 
>>415741
Тащем-то, это я заметил, но оно не должно никак влиять, поскольку вызывается .toInt(&ok), где значение ok устанавливается в любом случае.
Аноним 11/12/14 Чтв 18:13:32 #486 №415745 
>>415742
Оно вызывается во всех случаях, кроме ветки для операции call, однако, значение проверяется всегда.
sageАноним 11/12/14 Чтв 18:22:25 #487 №415748 
>>415745
Ага, уже сам нашел.
Всегда ругал себя за то, что инициализирую переменные ok в коде, хотя им всегда потом обязательно присваиваются значения при передаче указателя на них в функции. Оказывается, зря ругал.
Аноним 11/12/14 Чтв 19:46:11 #488 №415776 
Нужно сделать задание за деньги. Суть: написать свой парсер для работы с xml. За деталями в почту: [email protected]
sageАноним 11/12/14 Чтв 19:47:10 #489 №415777 
>>415776
Пошел на хуй, чепуш.
Аноним 11/12/14 Чтв 19:49:22 #490 №415779 
Тупой вопрос 10/10. Хочу рисовать простые геометрические фигуры, возможно выводить картинки. Что мне гуглить, желатьльно разжеванные туториалы с примерами кода. Я бы мог и сам, но уже начинаю тонуть в документации. Хочется чего-то минималистичного. Я же, блять, не знаю, что и куда подключать, качать, загружать.
Аноним 11/12/14 Чтв 20:18:29 #491 №415787 
>>415779
Qt
Аноним 11/12/14 Чтв 20:27:31 #492 №415789 
>>415779
SDL2/SFML
Аноним 11/12/14 Чтв 20:27:36 #493 №415790 
>>415779
Это тебе однозначно в сторону SDL. Лёгкая динамическая библиотека, весит меньше полмегабайта, используется в эмуляторе Android, как один из возможных рендеров изображения в куче видеоплееров, и ещё много где.
Аноним 11/12/14 Чтв 20:32:54 #494 №415793 
>>415789
>>415779
Поддвачиваю SDL2/SFML
За SDL2 не знаю, а в SFML точно есть встроенные функция отрисовки простейших геометрических фигур. Сам пользуюсь SFML
Аноним 11/12/14 Чтв 23:43:24 #495 №415832 
>>415779
https://github.com/memononen/nanovg
sageАноним 12/12/14 Птн 00:33:27 #496 №415838 
> 21:33 11/12/2014
> C++
Вопрос от нуба по Qt Аноним 12/12/14 Птн 02:35:14 #497 №415858 
Котаны не смог сюда запостить, пишет присутствует слово из спам листа, поэтому скинул на пастбин. Помогите разобраться
http://pastebin.com/rUG6Y6tE
Аноним 12/12/14 Птн 11:02:01 #498 №415893 
>>415858
Ставь пробелы между скобками ( )
sageАноним 12/12/14 Птн 11:12:55 #499 №415896 
>>415858
>Как можно создать объект Ui::MainWindow в классе MainWindow?
Вот так:
ui = new Ui::MainWindow.
Еще вопросы?
Аноним 12/12/14 Птн 14:07:08 #500 №415925 
>>415896
Да я не про это. Разве можно создавать объект класса MainWindow в классе MainWindow?
Аноним 12/12/14 Птн 14:27:15 #501 №415940 
>>415925
А почему нет?
sageАноним 12/12/14 Птн 16:02:55 #502 №415963 
>>415925
Это не Main Window, а Ui::MainWindow, два разных класса. В глаза что ли ебешься?
sageАноним 12/12/14 Птн 16:05:00 #503 №415964 
>>415963
>MainWindow
фикс (ненавижу с лопаты писать)
Аноним 12/12/14 Птн 16:13:39 #504 №415967 
http://pastebin.com/diYjLb70

Как сохранять поля элементов связанного списка в файл, и читать их из файла?
Аноним 12/12/14 Птн 16:29:10 #505 №415976 
>>415963
А где тогда реализаци Ui::MainWindow?
sageАноним 12/12/14 Птн 16:44:35 #506 №415980 
>>415976
Лол что? Что ты собрался реализовывать? Где ты там видишь хоть один метод, конструктор, переменную?
Аноним 12/12/14 Птн 16:47:00 #507 №415983 
Пацаны, норм мне будет как первый учебник - http://www.ozon.ru/context/detail/id/25217223/
?
Аноним 12/12/14 Птн 16:55:05 #508 №415985 
>>415980
Почему тогда не создают объект Ui_MainWindow, а делают бесполезное, на мой взгляд наследование?
Аноним 12/12/14 Птн 16:55:49 #509 №415986 
>>415983
Да норм
sageАноним 12/12/14 Птн 17:06:30 #510 №415989 
>>415967
>связанного списка
С кем связанного? С хуем твоего деда? Он связный, а не связанный. Это во-первых.
Во-вторых, http://pastebin.com/Au2bFaJw (писал прямо там, опечатки сам проверяй).
sageАноним 12/12/14 Птн 17:07:00 #511 №415990 
>>415985
Я не разработчик Qt, спроси лучше у них.
Аноним 12/12/14 Птн 17:07:29 #512 №415991 
>>415990
Ок, спасибо
sageАноним 12/12/14 Птн 17:08:22 #513 №415993 
>>415989
В последнем цикле i забыл инкреметить. В конце где-нибудь добавь.
Аноним 12/12/14 Птн 17:16:17 #514 №415994 
>>415986
Спасибо. Заказал только что.
Аноним 12/12/14 Птн 17:19:09 #515 №415995 
>>415993
Благодарю тебя.
Аноним 12/12/14 Птн 19:06:40 #516 №416026 
>>415994
Зачем? Погугли и спокойно найдёшь в электронном виде в вк.
Аноним 12/12/14 Птн 20:07:41 #517 №416055 
14184040610420.png
Пасаны, а нахуя
http://msdn.microsoft.com/ru-ru/library/ms173704.aspx
?
Ведь чем больше букв - тем лучше же!
Аноним 12/12/14 Птн 20:27:15 #518 №416064 
14184052358750.jpg
>>416055
ПАСАНЫЫЫЫЫ
Аноним 12/12/14 Птн 20:34:58 #519 №416068 
>>416064
А если два enum'а например так
enum E{a};
enum B{a};

то как обращаться? S::E::a ошибки уже не будет?
Аноним 12/12/14 Птн 21:10:34 #520 №416079 
14184078347550.png
>>416068
То был варнинг, а в твоём варианте вообще ужос и эрроры. Пиздец, кресты такие кресты.

>prog.cpp:6:13: error: redeclaration of ‘a’
> enum B { a };
> ^
>prog.cpp:5:13: note: previous declaration ‘S::E a’
> enum E { a };
> ^

struct S {
enum E { a };
enum B { a };
};


int main() {
int i = S::E::a;
int j = S::B::a;
}
Аноним 12/12/14 Птн 21:16:49 #521 №416086 
>>416079
Есть такая проблема в плюсах. Советуют называть так
enum A {A_a, A_b}
enum B {B_a, B_b}
так проблем не будет.
Аноним 12/12/14 Птн 21:21:24 #522 №416087 
14184084844450.jpg
>>416086
Я поражён, если честно. Попишу кодец именно так, спасибо.
Аноним 12/12/14 Птн 21:43:41 #523 №416098 
>>415983
ИТТ луркани-ка "шилдт"
Аноним 12/12/14 Птн 21:49:38 #524 №416100 
>>416068
>>416086
>Есть такая проблема в плюсах
>>416087
Нет такой проблемы в плюсах. Есть enum class
Аноним 12/12/14 Птн 21:50:06 #525 №416101 
14184102062440.jpg
Программеры, кто спрашивал за SDL \ SFML
SFML таки папизже. То, что я в SDL делал ручками в SFML уже есть и даже допиливать не нужно.
Аноним 12/12/14 Птн 21:54:50 #526 №416106 
>>416100
enum class только в C++11 завезли
Аноним 12/12/14 Птн 23:37:44 #527 №416144 
>>416106
>11
А на дворе уже скоро 15й будет.
Аноним 13/12/14 Суб 01:22:01 #528 №416172 
>>415983
Там в комментариях пишут, что это переиздание книги 2006 г., а значит, она описывает старый стандарт 2003 года.
Лучше вот эти:
http://www.ozon.ru/context/detail/id/7979735/
http://www.ozon.ru/context/detail/id/26348781/
Аноним 13/12/14 Суб 03:21:05 #529 №416194 
Нубский вопрос. Как решить, где лучше держать члены класса -- в стеке или в куче? Я как-то привык, что со стандартными типами и часто употребимыми классами вроде string используется стек, а всякие сложные объекты кладутся в кучу и используются по указателю. Но мб я не прав.

Собственно, как лучше?
sageАноним 13/12/14 Суб 08:30:27 #530 №416206 
>>416194
Когда тебе это на самом деле будет надо, тогда и узнаешь. Тот же std::string внутри хранит данные в куче, кстати. Общее указание: если данных много, то пихай в кучу, чтобы не переполнять стек (места там не очень много).
Аноним 13/12/14 Суб 09:50:21 #531 №416211 
Анон, суть такова.

Есть класс, в котором живет std::unordered_map< string, Record > list. Как правильно сделать, чтобы при удалении данного класса удалялось все содержимое list? При прописывании в деструкторе класса list.clear() ни один деструктор Record-ов не срабатывает.
sageАноним 13/12/14 Суб 10:19:32 #532 №416213 
>>416211
Полный код или пошел на хуй.
Аноним 13/12/14 Суб 10:36:21 #533 №416214 
>>416213
Забей, баттхертнутый няш, разобрался уже.

Проблема была не в этом, а в попытке анлочить не залоченный мьютекс в деструкторе Record.

Кстати, почему так нельзя делать?
sageАноним 13/12/14 Суб 10:54:46 #534 №416215 
>>416214
Вот потому я и говорю, что нужен полный код. Каким хуем я могу догадаться, что проблема в мьютексе? Но нет, каждый чепуш думает, что уж с его то проблемой можно разобраться по паре бессвязных кукареков.
Нельзя так делать потому, что так (без проверок) быстрее работает. Да, тут критична даже проверка одного bool, ибо лочиться должно как можно быстрее, на счету каждый такт процессора.
Аноним 13/12/14 Суб 10:57:05 #535 №416217 
>>416215
Как же я все-таки люблю Qt за его полную документированность. Час копался в коде и доках, пытаясь понять, где беда -- и в итоге все равно выяснил опытным путем.
sageАноним 13/12/14 Суб 11:34:09 #536 №416225 
>>416217
Проблема не в Qt, проблема в ДНК.
http://qt-project.org/doc/qt-4.8/qmutex.html#unlock
>Unlocking a mutex that is not locked results in undefined behavior.
Аноним 13/12/14 Суб 11:39:31 #537 №416227 
>>416225
Ты в очи долбишься, камрад?

Фраза про Qt не была иронией, я сейчас на голых плюсах пишу и у меня ДИСКОМФОРТ.
sageАноним 13/12/14 Суб 11:54:47 #538 №416230 
>>416227
У тебя фраза двусмысленная. Выглядит и как сарказм, и как правда. Учитывая количество недовольных неосиляторов, я сделал ставку на первый вариант.
Уже хотел извиниться, но не буду, потому что http://en.cppreference.com/w/cpp/thread/mutex/unlock
>The mutex must be locked by the current thread of execution, otherwise, the behavior is undefined.
Аноним 13/12/14 Суб 12:04:23 #539 №416232 
Подскажи, плюсач, какой библиотекой стоит воспользоваться для работы с MySQL под плюсами. Интересует такая, чтобы не требовала буста, хуюста и прочих подобных приколов, а содержала в себе все, что ей нужно, либо брала из std.
sageАноним 13/12/14 Суб 12:08:44 #540 №416236 
>>416232
http://dev.mysql.com/downloads/connector/cpp/ смотрел?
sageАноним 13/12/14 Суб 12:10:09 #541 №416238 
>>416236
Хотя нет, там вроде этот ваш блядский буст. Ну тогда Qt, собранный с опцией "-qt-sql-mysql".
Аноним 13/12/14 Суб 17:34:06 #542 №416324 
мудила снова выходит на связь

http://pastebin.com/uLeBUsMG

Поясните как правильно выделить память под мое дерьмо?
Сейчас пытаюсь изначально посчитать сколько потребуется памяти и столько выделяю, но чую все не верно.
сама программа делает такую штуку типо например если задан массив Hel2o wo15rld, то она должна переписать его в массив Hello wooooooooooooooorld, типо в зависимости от цифр увеличивается количестко букв.
еще там где то нужно впихнуть мемсет. Помогите, ньюфегу плис. язык C
Аноним 13/12/14 Суб 18:30:16 #543 №416336 
>>416324
О Боги, моги глаза.
>тут я считаю сколько символов будет в новом массиве переменная n
Не правильно считаешь. У тебя на первый хелоу ворлд получается 10 символов, тогда как их 12. Плюс не учитывается нуль символ.
И вообще не понятно, на кой ляд ты сам считаешь размер строки то? Чем тебе strlen? Еще не понятно, нахуя ты выделяешь один байт сначала, а потом реалок делаешь. Выдели себе память после того, как посчитал необходимый размер.
Дальше даже не читал, там скорее всего тоже все невероятное.
Аноним 13/12/14 Суб 18:31:05 #544 №416337 
>>416336
>Чем тебе strlen не угодил?
быштрафикс
Аноним 13/12/14 Суб 19:01:24 #545 №416345 
>>416336
Ну это да, сначала я просто выделял память, но ловиг сегафолт! Это после двух часов возни я просто так оставил, щас попробую исправить, но вообще возможно так делать да? Посчитать сколько памяти нужно и выделить?
Аноним 13/12/14 Суб 19:09:24 #546 №416347 
>>416336>>416337
Стрлен не использую потому что я же не знаю какого размера будет новый массив, я просто смотрю какие есть числа в изначальном массиве, допустим есть число 30, вот я его и прибавляю к N, потому что будет 30 каких то знаков дополнительно.
Аноним 13/12/14 Суб 19:14:36 #547 №416348 
>>416345
Ну конечно можно, что за глупый вопрос. С чего ты взял, что нельзя?

>>416347
Я имею в виду вместо твоего подсчета размера строки для i переменной.
Аноним 13/12/14 Суб 19:17:43 #548 №416350 
14184874634600.jpg
>>416336
Да, а насчет n 10, я просто забыл поправить, видишь ли, я не понимаю почему, но если n 12 то сразу сегафолт, а если n10, то первое проходит лол.
Вот улучшеная версия, посмотри, пожалуйста. http://pastebin.com/uLeBUsMG
Аноним 13/12/14 Суб 19:18:09 #549 №416351 
>>416348
Понял, для i исправлю.
Аноним 13/12/14 Суб 19:19:53 #550 №416354 
>>416350
Да оно у тебя и так вылетает. Крутой у тебя вообще способ исправлять.
Аноним 13/12/14 Суб 19:21:13 #551 №416355 
>>416350
>МОЖНО ЛИ ВМЕСТО МАЛЛОК + МЕМСЕТ ИСПОЛЬЗОВАТЬ КАЛЛОК??
Можно.
Аноним 13/12/14 Суб 19:23:02 #552 №416357 
14184877824510.jpg
>>416354
Ну и я о том же. Собственно поэтому я и прошу совета, почему мать его вылетает.
>>416355
Ок, щас попробую так, спасибо
Аноним 13/12/14 Суб 19:23:18 #553 №416358 
>>416350
А падает у тебя, скорее всего, пушо в твоей новой строке нету нульсимвола.
Аноним 13/12/14 Суб 19:28:46 #554 №416361 
>>416358
Как исправить?
Аноним 13/12/14 Суб 19:30:34 #555 №416362 
>>416361
Добавить нульсимвол, лол. Каждая строка должна заканчиваться нульсимволом, иначе тот же strcmp не поймет, где конец строки ну это если образно говорить.
Аноним 13/12/14 Суб 19:34:47 #556 №416364 
>>416362
Чет не помогло.
Добавил в конце функции newsrc[i+1]='\0';
Аноним 13/12/14 Суб 19:35:43 #557 №416367 
>>416364
А ты не забыл выделить размер под него?
Аноним 13/12/14 Суб 19:36:59 #558 №416368 
>>416367
Не забыл, бро, честно. в каллоке дописал n+1;
Аноним 13/12/14 Суб 19:41:33 #559 №416370 
>>416368
Теперь оно первый асерт нормально проходит, поздравляю. Падает на втором. Во вребя подсчета размера новой строки. У тебя там с оказывается равным 44772. Ты дебагером вообще умеешь пользоваться? Запусти под дебагером, оно покажет, где упало и состояния всех переменных.
Аноним 13/12/14 Суб 19:49:42 #560 №416376 
>>416370
Я знаю почему падает на втором, короче нельзя писать newsrc[i+1]='\0'; потому что это не конец новой строки, newsrc[j+1]='\0'; Теперь оно проходит первые два ассерта, спасибо анон, третий правда не проходит, но там я думаю из-за нулякоторый уничтожает символ, щас попробую поправить.
Аноним 13/12/14 Суб 19:50:14 #561 №416377 
>>416376
>newsrc[j+1]='\0';
>вот конец новой строки
фикс
Аноним 13/12/14 Суб 19:51:38 #562 №416378 
>>416376
Там из-за того что 10 на конце, т.е. в 3 ассерте.
Аноним 13/12/14 Суб 19:56:37 #563 №416381 
>>416378
Еще раз повторюсь - у тебя не правильно считается размер новой строки. Как минимум пушо из выхода вложенного цикла, который делает c++ ты делаешь еще раз c++.
Аноним 13/12/14 Суб 19:59:38 #564 №416382 
>>416381
Ох ты прав, исправил вроде работает. Щас еще потестю, ты офигенен.
Аноним 13/12/14 Суб 20:00:30 #565 №416385 
14184900303390.jpg
>>416381
Теперь все работает, как часы. Как тебе отблагодарить?
Аноним 13/12/14 Суб 20:01:09 #566 №416387 
>>416382
>ты офигенен
Ну а то.

>>416385
Сиськами, очевидно же.
Аноним 13/12/14 Суб 20:04:25 #567 №416390 
>>416387
щас, доделаю свое говно. ;3
Аноним 13/12/14 Суб 20:11:19 #568 №416393 
Вот жеж сука, проверяющая хуйня все равно не хочет брать мою прогу, пишет так.
Test 'Начальный тест': Успех
100.00 %


Test 'Тест предельных значений': Программа провела недействительную операцию и была закрыта (Segmentation fault/Bus error/Memory limit exceeded/Stack limit exceeded)


Где то там еще сегафолт сидит
Аноним 13/12/14 Суб 20:43:39 #569 №416407 
14184926194710.jpg
14184926194731.jpg
14184926194742.jpg
>>416387
Аноним 13/12/14 Суб 20:44:45 #570 №416408 
>>416407
:3
Аноним 13/12/14 Суб 22:57:44 #571 №416491 
Анон, может кто подкинуть алогоритм, чтобы выписать все комбинации с цифрами массива.
допустим 123 - 321, 32, 3, 31, 21, 2, 1, 123,12,1... и так далее
Аноним 14/12/14 Вск 04:35:26 #572 №416569 
Дорогой сиплюсплюч, есть ли у тебя ссылки на годные лекции по этому замечательному языку? Можно и на английском, я не против, в языки могу. Но не надо просто скидывать нагугленное. Хочется годноты.
Аноним 14/12/14 Вск 07:01:58 #573 №416583 
>>416569
Дык, Кнут, Страуструп, вся фигня. Кнут пишет довольно криво, а вот у Страуструпа прекрасный язык.

Еще советую Макконнелом заполировать.
Аноним 14/12/14 Вск 17:34:04 #574 №416704 
Ребят, кто работает в Windows Forms, отпишите, пожалуйста, сюда https://vk.com/id169172377
Мне ооочень нужна помощь
sageАноним 14/12/14 Вск 17:52:39 #575 №416714 
>>416704
Иди в пизду, выблядок.
Аноним 14/12/14 Вск 18:54:20 #576 №416729 
Кто может пояснить что тут происходит. смысл вызова функции в ней же самой, рекурсия Когда функция снова себя вызывает она как бы допроходит цикл, но и потом еще допроходит на следующем и на следующем и на следующем?
http://pastebin.com/fSgQ1MAS
Аноним 14/12/14 Вск 18:55:33 #577 №416731 
Кто может пояснить что тут происходит. смысл вызова функции в ней же самой, рекурсия Когда функция снова себя вызывает она как бы допроходит цикл, но и потом еще допроходит на следующем и на следующем и на следующем?
http://pastebin.com/fSgQ1MAS
sageАноним 14/12/14 Вск 19:25:00 #578 №416745 
>>416729
Что тебе не понятно то? Практической пользы в этом никакой нет, совершенно искусственный пример рекурсии, да еще и крайне неудачный в плане наглядности. Преподу твоему руки поотрывать за то что учит вас так оформлять код.
Аноним 14/12/14 Вск 20:15:58 #579 №416761 
>>416745
Да да, ну мне все же будет полезно, мне собственно нужно чтобы допустим в массиве было 3 2 1, и оно выписало все возможные комбинации, но только чтобы шли по уменьшению, такие как 3 2 1, 3 2, 3 1, 3, 2 1, 2, 1.
>>416731 - вот это я так просто создал, чтобы понять как работает, уже понял. Щас буду дальше пробовать.
Аноним 14/12/14 Вск 20:34:11 #580 №416770 
>>416761
И собственно я и выписываю 3 2 1, 2 1, 1. Как выписать 3 1, вот в чем вопрос.
Аноним 14/12/14 Вск 20:44:50 #581 №416776 
>>416770
А ты попробуй подойти с другой стороны. Составляешь наибольшее сочетание, скажем, (1 2 3), а потом по очереди убираешь один из элементов. Для оставшихся сочетаний (2 3), (1 2), (1 3) повторяешь операцию, получишь (1), (2), (3). Естественно, повторы надо отслеживать при этом, занося, скажем, в массив или множество (лучше tree set).
Аноним 14/12/14 Вск 20:47:07 #582 №416778 
>>416776
Хуй знает, можно ли придумать алгоритм без отслеживания повторов, но чую я, что он будет либо запутанный, либо построенный на основе хитрых математических трюков, и потому сложный для понимания. А раз в условиях задачи не указано, что нельзя отслеживать повторы, то нехуй себе голову забивать.
Аноним 14/12/14 Вск 22:00:39 #583 №416831 
>>416776
Не, мне дают N сколько всего чисел, и потом мне нужно выписать все возможные комбинации по уменьшению. Сейчас мой алгоритм может только выписать все подряд, убирая самое маленькое справа и еще через одну цифру перепрыгивать. а нужно как-то все. пиздец короче
sageАноним 15/12/14 Пнд 04:08:44 #584 №416918 
>>416831
Ты сука ебнутый? Я тебе написал как можно сделать. Пиздуй-ка ты лучше в армию.
sageАноним 15/12/14 Пнд 11:32:17 #585 №416977 
Подскажите, как посчитать количество символов в файле. Есть простой способ - посимвольно их считывать до eof, но мне он не подходит, так как хочу динамически выделить память под массив из этих символов, а для этого нужно знать размер. Можно, канеш, их считать, потом поставить каретку на начало файла и записывать уже данные в массив, но по-моему это нерационально.
Предполагаю, что можно как-то сдвинуть каретку на конец файла и узнать, сколько же символов там перешагнулось, полагаю воспользоваться этим способом, так вот - какие это функции загуглить (а то гугол в основном С выдает и WINAPI штуки).

Прошу не бить, по образованию ни разу не программистка.
sageАноним 15/12/14 Пнд 13:40:07 #586 №417005 
>>416977
Единственное кросс-платформенное решение - http://stackoverflow.com/questions/5840148/how-can-i-get-a-files-size-in-c (строго говоря, решений больше, но они либо проигрывают в скорости/ясности, либо сводятся к данному).
А вообще, правильно гугл кидает на системный API, потому как работа с ФС зависит от платформы. Либо использую метод по ссылке, либо - API конкретной ОС (для шинды это http://msdn.microsoft.com/ru-ru/library/windows/desktop/aa364955%28v=vs.85%29.aspx ).
Алсо,
>программистка

ты знаешь правила.
sageАноним 15/12/14 Пнд 13:40:42 #587 №417006 
>>417005
>используй
фикс
sageАноним 15/12/14 Пнд 20:30:52 #588 №417138 
>>417005
Программа сугубо под винду, так как работаю с DirectX. За кроссплатформенную ссылку спасибо, почитать очень полезно. По поводу GetFileSize() - я так понимаю, чтобы это использовать, мне нужно создать класс файловых объектов и вообще хорошенько пошликать на весь WINAPI, потому что иначе там два несчастных параметра не заполнить. Но встречала и такие варианты, как GetFileSize("путь к файлу", NULL) или GetFileSize("путь", &переменная типа unsigned long), что вообще обескураживает мой мозг.
Я так понимаю, количество символов внутри файла при использовании этой функции будет равняться такому выражению: GetFileSize(...)/sizeof(char) ? Просто никогда не встречала именно такого выражения в реальных программах и смущена.

Алсо, нафига пруфы на программаче, вы же не быдло.
Аноним 15/12/14 Пнд 20:59:55 #589 №417151 
>>417138
Суть способа взятия размера файла в том, что ты подразумеваешь, что весь текст внутри написан в char'ах. Нет русське/японське/etc языка и вообще. Если это ок, то ты можешь использовать просто tellp/tellg и не париться. Если это есть, то файл придется читать.
По поводу GetFileSize ничего трудного. Открываешь файл через винапи, берешь размер через винапи, вот и все. Второй параметр в GetFileSize тебе не нужен http://msdn.microsoft.com/en-us/library/windows/desktop/aa364955%28v=vs.85%29.aspx - читай доки, что он значит. Он ничем не будет отличаться от способа взятия размера файла через стандартные стримы. Алсо в винапи такого нет:
>GetFileSize("путь к файлу", NULL)
Не знаю, что ты там видела, может кто-то написал свою функцию просто.
sageАноним 15/12/14 Пнд 21:12:01 #590 №417154 
>>417151
Спасибо, бро. Задал мне направление. А говорят еще, что бесполезно на бордах и форумах что-либо спрашивать.
sageАноним 15/12/14 Пнд 21:17:51 #591 №417155 
>>417151
Че ты ей мозги ебешь своими кодировками. Для этого есть enca. Размер определил, массив char создал, файл в него считал, потом по мере необходимости юзаешь enca (если надо работать именно с текстом) и, собственно, все. Проблемы следует решать по мере их возникновения.
sageАноним 15/12/14 Пнд 21:23:48 #592 №417159 
>>417155
Да, и еще. Если производительность не критична (точнее, не очень критична), используй, например, Qt или boost, там уже, как говорится, все украдено до нас.
sageАноним 15/12/14 Пнд 21:36:34 #593 №417161 
>>417159
По-моему ты сложнее говоришь. Я вообще думаю с бинарными типами файлов разобраться, так как допускаю, что это улучшит производительность (если под этим понимается скорость, которая для программы критична), только позже.
Про кодировки и их различия в курсе, библиотека MSDN не такая страшная после DirectX, поверь.
sageАноним 15/12/14 Пнд 22:00:00 #594 №417171 
>>417161
Так тебе надо с кодировками работать, или нет? Я так и не уловил. А если надо, то тут три варианта: или заранее знать и указывать вручную, или enca, или велосипед. Легко догадаться, какой вариант лучше по совокупности простоты и универсальности.
О производительности вообще стоит думать только тогда, когда ее не хватает. Иначе это premature optimisation, и это весьма вредно для качества кода и скорости его написания.
sageАноним 15/12/14 Пнд 22:31:36 #595 №417179 
>>417171
Мне не надо работать с кодировками, т.к. все файлы будут создаваться:
- мной вручную для тестирования на первых порах, и туда будут заноситься цифры, которым побоку на кодировку.
- самописной программой в дальнейшем, которая будет опять же заполнять файлы циферками.
Есть возможность, что мне придется подключать какие-либо буквы, но и в этом случае я воспользуюсь A-Z, a-z. Поэтому полагаю, один символ у меня соответствует типу char, и wchar'ов внезапных не объявится, а других траблов с кодировкой я не вижу. Но если я слепая курица и чего-то недогоняю, поясни. Просто с Qt, boost и enca я ни разу не сталкивалась и зубрежки там наверняка побольше будет, чем я рассчитываю. Планировала управляться с WINAPI, Direct3D и C++, имхо для игры хватать должно.
sageАноним 16/12/14 Втр 07:45:35 #596 №417259 
>>417179
>игра без движка на голом винапи/дх3
Кек. Вот это извращение. Надеюсь, ты понимаешь, что делаешь.
А что касается размера файлов, тебе хватит самой первой ссылки (stackoverflow.com). Тупо копипасти ту функцию из ответа и не парься.
Насчет зубрежки ты не права. Ее в программировании (прикладном, а не теоретическом) вообще нет и быть не должно. Надо что-то - вбиваешь в гугл. Наиболее часто используемое само запомнится.
Удачи тебе с игрой.
sageАноним 17/12/14 Срд 01:48:28 #597 №417471 
>>412036
двачую этого уебка
sageАноним 17/12/14 Срд 08:23:02 #598 №417504 
>>417471
Мамашу свою подвачуй.
sageАноним 17/12/14 Срд 11:57:16 #599 №417526 
HANDLE hMap = CreateFile(L"path\\map01.txt", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);

map.size = GetFileSize(hMap, NULL); кто-то говорил что с NULL не работает

map.pArray = new char [map.size];

DWORD dwBytes = 0;

ReadFile(hMap, map.pArray, map.size, &dwBytes, NULL);

А вот теперь поясните за dwBytes. Почему нельзя просто число указать, зачем в этой функции LPDWORD? Алсо, код рабочий.
sageАноним 17/12/14 Срд 11:58:46 #600 №417527 
>>417526
И почему там должен быть 0, а не 1 (по одному байту считываем вроде бы).
sageАноним 17/12/14 Срд 12:36:47 #601 №417535 
>>417526
>>417527
>nNumberOfBytesToRead
>lpNumberOfBytesRead
Чувствуешь разницу? Хинт: второй параметр - то, сколько байт было реально прочитано. Передать в функцию можно указатель на переменную с любым значением, оно все равно будет перезаписано.
Алсо, нахуя тебе этот винапи? Он же уродливый. Все это можно на чистых крестах сделать, без мелкомягкой дрисни: http://www.cplusplus.com/reference/istream/istream/read/
Аноним 17/12/14 Срд 13:26:35 #602 №417546 
>>417526
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365467%28v=vs.85%29.aspx
>lpNumberOfBytesRead [out, optional]
>A pointer to the variable that receives the number of bytes read
Как ты себе представляешь тут "просто число указать"?
sageАноним 17/12/14 Срд 17:50:18 #603 №417606 
>>417535
Въехала, спс.
>Алсо, нахуя тебе этот винапи? Он же уродливый.
Просто интересно стало. Но да, вариант fstream'а посимпатичнее, хотя есть у меня подозрение, что если юзать его, то это подключать лишнюю библиотеку и увеличивать размер программы, или особой погоды количество библиотек не делают? Просто <windows.h> мне все равно инклюдить приходится под окно, а вот без <fstream> могу при желании обойтись же.

>>417546
Я понимаю что это указатель на переменную. Просто сразу подумала, что в этой переменной хранится число байт к прочитке, а не прочитанных. Ну не всем же быть умняшками как ты или вышеотписавшиеся аноны.
sageАноним 17/12/14 Срд 18:14:24 #604 №417615 
>>417606
Подключая <fstream> ты подключаешь только заголовочный файл. Стандартная библиотека у тебя уже по дефолту подключена, и там (о, ужас!) кроме fstream есть еще хуева туча классов. Так что ты ничего не теряешь.
sageАноним 17/12/14 Срд 18:32:38 #605 №417626 
>>417615
Тогда ок.
Аноним 17/12/14 Срд 22:04:09 #606 №417681 
14188430498330.jpg
Програномы, не могу понять, как можно убирать компоненты в шестом билдере, а потом их снова создавать по мере надобности.
Допустим, есть три кнопки: 0, 1 и 2. По нажатию 1 убирается 0, тем самым освобождая память, а по нажатию 2 кнопка 0ну или просто новая кнопка, которой можно задать caption появляется снова. Пробовал Free, но при попытке снова вызвать компонент билдер ругается ошибками.
Помогите, плиз. С меня как всегда
Аноним 17/12/14 Срд 22:17:11 #607 №417686 
бамп
sageАноним 17/12/14 Срд 23:47:09 #608 №417723 
>>417681
А ты их malloc-ом создаешь?
sageАноним 18/12/14 Чтв 08:32:21 #609 №417769 
>>417681
>6 билдер
Этого уже достаточно, чтобы послать тебя на хуй. К тому же, ты не предоставил ни свой код, ни даже текст ошибок. Итого: иди на хуй.
Аноним 18/12/14 Чтв 15:54:08 #610 №417866 
Привет, плюсач!

Ситуация такая: есть класс, в нем как член живет std::mutex. В одной из функций класса вызывается try_lock(). Он почему-то выдает false, хотя мьютекс таки не залочен.

Вопрос: какая может быть причина? Класс, где лежит мьютекс, живет в основном потоке. Блокирование вызывается по указателю из дочернего.
sageАноним 18/12/14 Чтв 15:59:42 #611 №417870 
>>417866
Код, сука. Когда вы научитесь прикладывать код?
sageАноним 18/12/14 Чтв 16:01:11 #612 №417871 
>>417866
Откуда мне блять знать, почему он не лочится? Может это из-за того, что твою мать ебут хачи. Без кода невозможно сказать наверняка, так что пока это наиболее вероятный вариант.
Аноним 18/12/14 Чтв 16:06:50 #613 №417874 
>>417870
>>417871
Меня интересуют возможные варианты. Кода много, я не знаю, что именно оттуда выкапывать.

Такой вопрос, внезапно. Мьютекс должен быть в том потоке, откуда вызывается блокировка, или в том, где исполняется lock()?
Аноним 18/12/14 Чтв 16:16:55 #614 №417877 
>>417870
>>417871
http://pastebin.com/3VRFwB6V
Вот, скопировал весь код, который на мой взгляд относится к делу.
Аноним 18/12/14 Чтв 16:35:18 #615 №417889 
>>417877
Проблемы возникают в том месте, где вызывается lock(), Он доходит до проверки трайлока и ЗАВАЛИВАЕТ ее, хотя мьютекс в этот момент не залочен.
sageАноним 18/12/14 Чтв 16:35:26 #616 №417890 
>>417874
>>417877
У тебя видимо каждый раз во время попытки блокировки мьютекс оказывается залочен, потому try_lock и не срабатывает. Уменьши время ожидания и увеличь число попыток. Скажем, 10 попыток, между ними по 100 мс.
>вызывается блокировка
>исполняется lock()
Вызов lock() тащем-то и есть блокировка.
Аноним 18/12/14 Чтв 16:49:47 #617 №417899 
>>417890
Нашел ошибку. Она оказалась в другом месте, но все равно спасибо за помощь.

Выяснилось, что анлок работал криво, потому что я не там делал true внутреннюю переменную, которая отражала залоченность мьютекса, чтобы не анлочить не заблокированный.
Аноним 18/12/14 Чтв 19:40:39 #618 №417968 
Двощ, дай быстрый ответ: как лучше всего реализовать методами STL контейнер типа < ключ, указатель, указатель >, то есть, с тремя полями? Заебенить вторым номером pair в unordered_map, или есть варианты симпатичнее?
sageАноним 18/12/14 Чтв 19:47:07 #619 №417970 
>>417968
Я бы структуру свою написал под это дело, ее бы и пихал. pair всегда считал уродливым костылем.
Аноним 19/12/14 Птн 22:44:42 #620 №418259 
>>417968
Запили структуру небольшую?
Аноним 20/12/14 Суб 18:13:28 #621 №418418 
Программач, помоги с вопросом.

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

За ранее спасибо.
sageАноним 20/12/14 Суб 18:43:10 #622 №418428 
>>418418
volatile bool active = true;
pthread_t theThread;

void doSomething() { while(active) {} }

int main()
{
pthread_create(&theThread, 0, &doSomething, 0);
sleep(9000);
active = false;
pthread_join(theThread);
return 0;
}

В doSomething на самом деле должен быть аргумент - указатель на void, но ебучая макака сломала тег code, а писать на всяких пэйстбинах влом.
Аноним 20/12/14 Суб 20:22:30 #623 №418443 
Аноны, возможно ли объявить одномерный массив длинной в (2^31 - 1)?
Аноним 20/12/14 Суб 20:22:46 #624 №418444 
>>418443
В плюсах, если чо.
Аноним 20/12/14 Суб 20:24:53 #625 №418446 
>>418443
Та делай, что хочешь. Главное, чтобы памяти хватило.
Аноним 20/12/14 Суб 20:28:17 #626 №418449 
>>418446
Как же мне объявить массив такой длины?
Аноним 20/12/14 Суб 21:09:38 #627 №418460 
>>418449
Бамп.
sageАноним 20/12/14 Суб 22:10:15 #628 №418483 
>>418449
int array[2147483647];
Аноним 20/12/14 Суб 22:11:33 #629 №418485 
>>418483
Понятное дело, кек.
Компил ругается, когда у меня в объявлении массива более девяти вроде символов.
sageАноним 20/12/14 Суб 22:53:33 #630 №418502 
>>418485
Ну значит никак, че тогда спрашиваешь.
Можешь еще динамический попробовать объявить:
int array = new int[std::pow(2, 31) - 1];
sageАноним 20/12/14 Суб 22:53:57 #631 №418503 
>>418502
Звездочка перед array проебалась из-за макаки.
Аноним 20/12/14 Суб 23:14:56 #632 №418508 
Анон, что значит две звездочки в переменных функции? Типо указатель на указатель? Зачем это и какие профиты можно извлечь?
Пример:
void funkce ( int звездочка звездочка p1,
int звездочка звездчка p2 )
{
}
sageАноним 20/12/14 Суб 23:21:19 #633 №418510 
>>418508
В гугл. Это уже слишком дебильный вопрос. Хуй я тебе отвечу, тупой мудак.
Аноним 20/12/14 Суб 23:30:03 #634 №418511 
http://pastebin.com/7WuPdTN5
Программа, которая раскладывает число на простые множители. Не проходит пару значений по лимиту времени. Как можно оптимизировать?
Аноним 21/12/14 Вск 13:53:10 #635 №418575 
>>418485
Компиль говорит, что у тебя число в инт не влазит. Сделай просто (unsigned long)2147483647 и радуйся.
Аноним 21/12/14 Вск 13:53:38 #636 №418576 
>>418575
Ах да, и учти, что у тебя навряд-ли стек такой толстый, так что в куче все делай.
Аноним 21/12/14 Вск 17:58:25 #637 №418689 
Ребята, помогите, пожалуйста.

Есть два сту... монитора (просто два монитора, подключенных к одной видеокарте, как у многих из сидящих тут на рабочем месте). Нужно на первый вывести то, что происходит на втором, т.е. продублировать изображение. Подскажите, куда мне копать. Использую связку C++ и Qt.

>>418508
Сюда ходи: cppstudio.com/post/9555/
Аноним 21/12/14 Вск 18:22:44 #638 №418698 
Анон,нужна помощь. Есть задание и есть в нём один момент который я не понимаю.
>Класс Ocean.Состоит из двумерного массива указателей на Cell...
>Cell.Абстрактный базовый класс.

Собственно как сделать двумерный массив указателей на абстрактный класс?
Моя версия не работает

class Ocean{
public:
Cellmap;
....
Ocean(){
map=new Cell[n];
for(int i=0;i<n;i++)
map=new Cell[n];
....
Аноним 21/12/14 Вск 18:25:42 #639 №418700 
>>418698
бля,указатели потерялись. Вот тут тот самый код http://pastebin.com/nTuE4HBB
Аноним 21/12/14 Вск 18:27:50 #640 №418702 
>>418689
Снова я на связи.

Самым быстрым способом, без гемороя с инициализацией контекста и перехватыванием видеопотока, будет просто смена режима: когда в Win7 мы жмем Win + P, то возникает панелька, с которой можно клонировать мониторы.

Выходит, это есть в системе и я могу просто переключить режим при помощи WinAPI... Только вот как?
Аноним 21/12/14 Вск 19:55:41 #641 №418739 
>>415725
Это снова >>415707-хуй, который теперь будет делать бэкапы. Умер диск, потерял исходники, сейчас понадобились, у тебя не остались ещё, случайно?
Аноним 21/12/14 Вск 21:07:27 #642 №418769 
14191852477070.jpg
Помогите составить рекуррентную формулу.
вот что я сделал но она вася не работает.

//#include <iostream>
//#include <iomanip>
//#include <cmath>
//
//using namespace std;
//
//int main ()
//{
// double a=0, b=0.5, h=0, x=0, Y=0, S=0, p=0;
// int n=150;
//
// cout<<"Vvedite nachalo inetrvala => ";
// //cin>>a;
// cout<<"Vvedite konec inetrvala => ";
// //cin>>b;
// cout<<endl;
//
// x=a=0.1;
// h=(b-a)/10;
// cout<<"Shag intervala => "<<h<<endl<<endl;
//
// do
// {
// p=1;
// S=x;
// for (int i=1; i<=n; i++)
// {
// p=-xxx;
// S+=p/(2
i)+1;
// p/=x;
// }
// Y=atan(x);
// cout<<setw (15)<<x<<setw (15)<<S<<setw (15)<<Y<<endl;
// x+=h;
// }
// while (x<=b);
// return 0;
//}

Две последние колонки должны быть равны.
sageАноним 21/12/14 Вск 21:39:12 #643 №418788 
>>418739
Держи: http://rghost.ru/private/59869151/01df0923e7f901ae43283576e790519c
Там, правда, с моими изменениями, сам уберешь, несложно.
Аноним 21/12/14 Вск 22:16:47 #644 №418797 
>>418788
Охуенно, спасибо.
Аноним 22/12/14 Пнд 15:44:00 #645 №418944 
14192522406310.png
Аноны, имеется некоторая формула, записанная в виде цикла: http://ideone.com/EDtVfY

Хуйня в том, что при вводе N больше 30 получаю nan, а это очень печально. Что делать?

Формула на пике
sageАноним 22/12/14 Пнд 18:39:57 #646 №418984 
>>418944
https://ru.wikipedia.org/wiki/NaN
Читай, ищи, где у тебя одно из перечисленных условий возникает (втыкаешь std::cout << [переменная]; и читаешь вывод программы).
Аноним 22/12/14 Пнд 18:48:16 #647 №418986 
14192632968230.png
>>418984
вот тут и поломался я
sageАноним 22/12/14 Пнд 19:22:18 #648 №418988 
>>418986
Мне угадывать, где какая переменная? Давай пили нормальный лог, с выводом номера итерации и значений всех переменных, а также с соответствующими именами этих переменных. Либо катись к хуям помогать долбоебам не всралось.
Аноним 22/12/14 Пнд 21:50:29 #649 №419000 
Анон, помоги разобраться. Почему из файла, содержащего 4-е записи, считывается 5-ть? Причем 5-я и 4-я записи содержат одно и тоже.
http://pastebin.com/7pb95RC3
Аноним 22/12/14 Пнд 21:55:11 #650 №419003 
Анон помоги. Имеется массив классов предка и в него помещаем наследников,вызывая переопределённую функцию получаем результат работы функции предка,а нужно чтобы работала функция наследника. http://pastebin.com/JAz6tZ5u
Аноним 22/12/14 Пнд 21:59:26 #651 №419004 
Антоны, вот поясните, зачем в реализации std::function сделан велосипед, эмулирующий виртуальную функцию. Если нужно сделать что-то конкретное, имея дескриптор на нечто абстрактное, то без стирания типов не обойтись. Нахрена эта лапша с параметром идентификатора операции и бойлерплейтный свич-кейс?

Чем плохо использовать базовый менеджер с виртуальными методами? Один хрен либо руками эмулировать виртуальность, либо это за тебя сделает компиллятор. И почему по умолчанию размер статического хранилища всего 8 байт (на 32 битах)? Чаще всего в коде приходится вызывать std::bind( &MyClass::myMethod, this ). В итоге используем тормозной malloc.
И ещё, необходимость грёбаного using namespace std::placeholders перед каждый вызовом std::bind заставляет чувствовать себя обезъяной. Ллять почему хотя бы не std::_1, std::_2?
Аноним 22/12/14 Пнд 22:35:41 #652 №419019 
>>419000
начинаю догадываться: этот же код, скомпилированный под windows, работает правильно
Аноним 22/12/14 Пнд 22:56:08 #653 №419024 
Sup pls. Поясните за индуктивные функции
Аноним 23/12/14 Втр 02:38:49 #654 №419066 
Скажи, плюсач, вот есть у меня std::undordered_map< int, Foo >. Как мне его правильно удалить, так, чтобы очистить память ото всех внутренностей?

Вот такой код: http://pastebin.com/j6mbFy3b -- вываливается с сегафолтом при дебаге.
Аноним 23/12/14 Втр 02:39:55 #655 №419067 
>>419066
Там, конечно же, указатель на Foo, а не просто Foo.
sageАноним 23/12/14 Втр 08:17:12 #656 №419084 
>>419000
>>419019
Скорее всего твой текстовый редактор добавляет пустую строку в конце. Убери ее. Под пинусом у меня все нормально. Если добавляю пустую строку, то тоже начинает 5 раз срабатывать (на самом деле в пятый раз оно ничего не считывает, но итерация цикла проходит, и добавляются предыдущие значения).
>>419003
Функция должна быть объявлена как виртуальная. Дальше гугли сам.
>>419004
namespace std {
using std::placeholders::_1;
}
и далее в коде
std::_1
Ты же знал, на что идешь, когда использовал кресты. С функциональной парашей уебывай в хаскель, либо не ной.
>>419024
http://lmgtfy.com/?q=%D0%B8%D0%BD%D0%B4%D1%83%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5+%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B8
>>419066
>>419067
Нахуя ты эрэйзишь? Конечно у тебя сегфолт будет. Сначала поудаляй все delete'ом, потом просто map.clear();
sageАноним 23/12/14 Втр 08:21:28 #657 №419087 
>>419066
>>419067
Забыл добавить. Вот почему нельзя эрэйзить:
>References and iterators to the erased elements are invalidated.
А у тебя потом идет использование этого итератора (сравнение и инкремент).
Аноним 23/12/14 Втр 13:53:42 #658 №419139 
>>419000
Потому что должно быть вот так:
while (!fin.eof()) {
fin >> nn >> A >> B;

if (fin.eof)
break;

sp1.addName(nn);
sp1.addParamA(A);
sp1.addParamB(B);
}
Аноним 23/12/14 Втр 13:56:55 #659 №419140 
>>419066
Блин, ну включил бы мозг, что ли. Вот - http://pastebin.com/iVR62Gip
sageАноним 23/12/14 Втр 14:19:51 #660 №419144 
>>419139
Хуйню ты говоришь, оно так последнюю строку не добавит.
>>419140
Нахуя присваивать 0? clear же вроде не вызывает delete, иначе как бы он работал, скажем, с int вместо указателя?
Аноним 23/12/14 Втр 14:47:03 #661 №419148 
>>419144
>Хуйню ты говоришь, оно так последнюю строку не добавит.
А я говорю сделай так.

>Нахуя присваивать 0?
Ну это типа по красивому. Можешь не присваивать.
Аноним 23/12/14 Втр 14:49:02 #662 №419149 
>>419144
>иначе как бы он работал, скажем, с int вместо указателя?
А ты не знаешь, что все контейнеры все в куче объявляют, нет? Ты в мапе хранить указатели, потому что думаешь, что unordered_map<int. Foo> тут без указателя будет делать все Foo в стеке?
Аноним 23/12/14 Втр 14:49:28 #663 №419150 
>>419149
>хранишь
быштрафикс
sageАноним 23/12/14 Втр 15:15:50 #664 №419156 
Начнем с того, что я не тот анон, который задавал вопрос.
>>419148
По поводу EOF - пикрелейтед. Так что обтекай. Красота - понятие относительное. Для меня лишний код не есть красота. (inb4 зачем тогда пишешь на крестах.)
>>419149
>>419150
Сравни: http://pastebin.com/Z5zrWAq0
Очевидно, что если при clear() будет вызываться delete, то второй вариант соснет, потому что по сути будет выполнено удаление int, а не указателя на int. Если же, как ты говоришь, память выделяется в куче, то фактически в первом случае мы получим указатель на указатель, который собственно и будет удален. См. пример: http://pastebin.com/zgmzbyQh
sageАноним 23/12/14 Втр 15:16:16 #665 №419157 
14193369764600.png
>>419156
Отклеилось.
sageАноним 23/12/14 Втр 15:28:14 #666 №419161 
>>419156
Сумбурно немного получилось, вот получше пример: http://pastebin.com/JSESBEsY
sageАноним 23/12/14 Втр 15:31:12 #667 №419164 
>>419161
И соответственно то что ты говоришь (с удалением): http://pastebin.com/Vk6Z9iap
Аноним 23/12/14 Втр 15:34:57 #668 №419165 
>>419156
>По поводу EOF
Окей, подойдем с другой стороны. Скорее всего у анона, который спрашивал, в конце есть какой-то символ. Мое предложение элементарно его игнорирует. По хорошему после каждого чтения nn и A надо проверить на конец файла. Да и вместо eof вообще с good работать.

Я не о том, что мапа должна/не должна удалять память указателей. Я о том, что возможно судя по его проблеме это точно ему там вообще указатели не нужны, т.к все контейнеры выделяют память в куче под хранение данных. И в это случае ему не надо будет играться с удалением, т.к clear все сделает за него.
sageАноним 23/12/14 Втр 15:43:04 #669 №419168 
>>419165
Я вообще-то про лишний символ сразу и написал. Но чукча же писатель, а не читатель, как в том анекдоте. В любом случае, это костыль.
По поводу мапы неправильно понял, ну да ладно теперь. Согласен, что лучше, если можно, делать как ты сказал. Но это не всегда бывает возможно, увы.
Аноним 23/12/14 Втр 15:46:01 #670 №419169 
>>419168
>Но чукча же писатель, а не читатель, как в том анекдоте.
Традиции двачей, не читать тред :3

>По поводу мапы неправильно понял
Да это я плохо высказался, наверное.

Ну в общем пляшем. Мир, дружба, лоляши.
sageАноним 23/12/14 Втр 16:07:09 #671 №419187 
>>419169
Хоть кто-то адекватный.
Аноним 23/12/14 Втр 18:26:16 #672 №419251 
14193483763320.jpg
Двощ, а двощ, а printf() или cout<< - их можно же дёргать из разных потоков, да?
sageАноним 23/12/14 Втр 18:56:29 #673 №419265 
>>419251
Можно, но http://habrahabr.ru/post/246257/
Аноним 23/12/14 Втр 19:01:49 #674 №419268 
14193505099240.png
>>419265
Спасибо, то, что нужно!
Аноним 23/12/14 Втр 20:25:12 #675 №419312 
>>419251
Можно то можно, но можешь получить кашу из выводов из разных тредов.
sageАноним 23/12/14 Втр 20:26:19 #676 №419316 
>>419312
Мьютексы? Не, не слышал.
Аноним 23/12/14 Втр 20:56:55 #677 №419336 
коллеги, плиз подскажите: я создаю класс отдельным файлом и вкладываю его (#include <header.h>) в основной main.cpp.
В main.cpp есть такая строчка #include <string>
В header.h в самом теле класса есть public: string name;
Так вот компилятор ругается что не знает такой тип string. Что бы дописать?
sageАноним 23/12/14 Втр 21:03:37 #678 №419343 
>>419336
Не буду тебе нихуя говорить. Прочитай учебник. C++ это не тот язык, в который можно вот просто так с бухты-барахты влезть и начать писать программы. Нужно хоть самую малость почитать.
Аноним 23/12/14 Втр 21:17:59 #679 №419361 
>>419343
в с++ для чайников нет описания данной проблемы.
Н у скажи, ааа?
sageАноним 23/12/14 Втр 21:21:58 #680 №419364 
>>419361
Ты бы еще какой-нибудь "C++ за 24 часа" читал, хотя это оно и есть скорее всего. Рекомендую "Стивен Прата - Язык программирования C++".
Аноним 23/12/14 Втр 22:06:28 #681 №419390 
>>410025
http://ideone.com/WHKwwi

for (const Ptr& child : mChildren)
{
child->draw(target, states);
}

Можете переписать как функтор для примера, я просто не сильно понимаю как правильно сделать.
sageАноним 23/12/14 Втр 22:12:47 #682 №419397 
>>419390
Что блять? Какой нахуй функтор? Функтор это класс с оператором operator(), что позволяет его вызывать как функцию. Где у тебя тут функция?
Аноним 23/12/14 Втр 22:15:31 #683 №419399 
>>419397
for (const Ptr& child : mChildren)
{
child->draw(target, states);
}
sageАноним 23/12/14 Втр 22:24:38 #684 №419404 
>>419399
Ну ок: http://pastebin.com/5sqcV7Xb А смысл?
Аноним 23/12/14 Втр 22:33:40 #685 №419407 
>>419404
Не понимаю. Хочу понять.
sageАноним 23/12/14 Втр 22:38:15 #686 №419410 
>>419407
Учебник читай.
Хотя, если ты знаешь что такое класс, функция и оператор (а оператор это функция, которую просто можно вызывать немного другим способом), но не можешь понять что значит
>Функтор это класс с оператором operator(), что позволяет его вызывать как функцию
то задумайся о проверке на умственную отсталость.
Аноним 24/12/14 Срд 08:48:11 #687 №419470 
14194000915620.jpg
>>419336
6амп вопросу
sageАноним 24/12/14 Срд 08:55:12 #688 №419472 
14194005129300.jpg
>>419470
Тебе уже все сказали. Уебывай к хуям.
Аноним 24/12/14 Срд 15:11:03 #689 №419541 
>>419472
Пидар
sageАноним 24/12/14 Срд 16:03:03 #690 №419549 
14194261839970.jpg
>>419541
Твой дед.
Аноним 24/12/14 Срд 20:22:00 #691 №419606 
>>419549
Твой дед - родитель номер 2 твоего родителя номер 1.
Кстати я уже сам разобрался в вопросе, всего делов то инклюдить класс после обьявления пространства имён.
Пилим перекат без пидоров.
sageАноним 24/12/14 Срд 20:30:56 #692 №419609 
>>419606
Тащем-то на то и был расчет, ибо надо самому немножко думать.
Программа на языке С++ Сергей 26/12/14 Птн 19:28:44 #693 №420047 
>>410025
Разработать программу, которая позволить создать двоичный типизированный файл test.bin и наполнить его с клавиатуры десятью целыми положительными десятичными числами (типа int) из диапазона от 100 до 200. Предусмотреть эащиту от ввода чисел,. выходящим за пределы указанного диапазона. Перед вводом каждого числа на экране должна появляться подсказка с его номером. После загрузки последнего числа закрыть созданный файл и вывести на экран сообщение о его успешном создании
sageАноним 26/12/14 Птн 19:59:46 #694 №420054 
14196131864330.jpg
>>420047
No.
Аноним 27/12/14 Суб 17:14:14 #695 №420241 
Писал первое задание - Name Generator.
Вот жеж блядский СИ с классами! Я целые сутки потратил на то чтобы узнать что оказывается нельзя внутри класса инициализировать массив символов.
Или можно?
Аноним 27/12/14 Суб 17:28:46 #696 №420248 
>>420241
Ну нашёл вроде стрингами можно.
class namegen
{public: string s[34]}
int main()
{namegen n;
n.s[0]="а";
n.s[1]="б";// как бы весь алфавит закинуть в массив?
sageАноним 27/12/14 Суб 18:25:48 #697 №420260 
>>420241
>>420248
Можно. Как - не буду говорить, читай учебник, это не сложнее чем правило "жи-ши".
Аноним 01/01/15 Чтв 21:27:15 #698 №421319 
Начал читать "с++ без страха", где можно выдрать компилятор, в котором можно испробовать примеры из книги?
sageАноним 01/01/15 Чтв 21:29:39 #699 №421322 
>>421319
Из пизды своей мамаши выдери.
Аноним 01/01/15 Чтв 21:32:00 #700 №421324 
>>421322

Хорошо!
Аноним 03/01/15 Суб 06:33:48 #701 №421695 
Написал прогу решения СЛАУ методом крамера. При определенном наборе чисел появляется ошибка floating point overflow - переполнение разряда. Два дня пытаюсь нагуглить как ее обойти, но все безрезультатно. Подскажите, желательно по проще способы, ибо сдавать работу уже очень скоро
sageАноним 03/01/15 Суб 14:33:48 #702 №421767 
>>421695
Давай код и входные данные, с которыми возникает ошибка. У тебя где-то слишком большое\маленькое число получается, которое не запихнуть в переменную. Попробуй double что ли, если float сейчас используешь.
Аноним 03/01/15 Суб 20:07:01 #703 №421881 
Не знаю где спросить - спрошу тут. Есть QWebView, есть сигнал linkClicked(QUrl), и есть минибраузер на Webkit, который я пилю. Как в QT определить, происходит переход на другой сайт при нажатии ссылки, или же это просто открывается новая страница на этом же сайте? Там есть что-то готовое, или придется самому писать?
sageАноним 03/01/15 Суб 20:56:01 #704 №421893 
>>421881
Придется делать самому.
Аноним 04/01/15 Вск 08:32:19 #705 №422030 
14203495397470.jpg
>>421767
я понимаю, что проблема в этом. вопрос - как от нее избавиться, чтобы программа выдавала нужный результат?
ошибка появляется в следующей строке (пикрелейтед) double coef = masTmp... здесь я делю следующий элемент в столбце на предыдущий, чтобы вычислить коэффициент, на который затем буду умножать предыдущую строку и вычитать ее из следующей, дабы привести матрицу к треугольному виду
sageАноним 04/01/15 Вск 08:59:15 #706 №422033 
>>422030
http://stackoverflow.com/questions/16270579/avoiding-floating-point-overflow
Более адекватного ответа не существует. Проверяй что на что делишь, если выходит за некие границы (их нагуглишь сам), то присваивай соответствующее дефолтное значение.
Аноним 04/01/15 Вск 09:59:57 #707 №422050 
>>422033
чето пиздецово как-то. угораздило же с такой проблемой столкнуться( хз че делать. поспрашиваю у знакомых бывалых
sageАноним 04/01/15 Вск 10:15:10 #708 №422058 
>>422050
Ты читать умеешь? Тебе уже сказано что делать. Хотя, что еще ждать от мелкобуквенного дауна.
Аноним 04/01/15 Вск 13:06:24 #709 №422084 
http://pastebin.com/GgTFVmvH
Аноним 05/01/15 Пнд 05:59:42 #710 №422362 
>>422058
что сказано-то?
>http://stackoverflow.com/questions/16270579/avoiding-floating-point-overflow
где конкретно здесь ответ?
sageАноним 05/01/15 Пнд 09:16:54 #711 №422373 
>>422362
У тебя с английским проблемы, или ты просто дебил?
>Yes, it is possible to avoid floating-point overflow. However, the appropriate method for doing so depends on your application. In an application where the ranges of the numbers are known in advance, it may be appropriate to design calculations that do not encounter overflow. If an application must handle general calculations that it cannot easily control, it may be appropriate to test for overflow at certain points, adjust the numbers to avoid it, and retain additional information to correct the results later. Or it may be appropriate to design one’s own system for floating-point arithmetic.
>Да, избежать floating-point overflow можно. Однако, способ сделать это зависит от твоего приложения. В приложении, где диапазоны чисел заранее известны, можно выстроить вычисления таким образом, чтобы избежать переполнения. Если приложение должно выполнять вычисления, которые непросто контролировать [твой случай, видимо], то следует проверять переполнение в определенных точках, подправлять числа во избежание переполнения и сохранять дополнительную информацию для корректировки результатов в дальнейшем. Или еще можно реализовать собственную систему для арифметики с плавающей точкой [а лучше воспользоваться готовыми библиотеками].
Аноним 05/01/15 Пнд 18:33:08 #712 №422525 
Привет, анончики.
Успел поработать уже в направление кодинга по С++ и С. Работал в компании, к-я занималась Android планшетами, портировал с АОСПа на дерьмовые китайский планшеты. В основном допиливал различные драйвера и переносил китайские костыли, дабы это заработало.
Так же постоянно пилю всякие свои программы. Понимаю, что программист должен выбирать инструмент под задачу, да только всё стараюсь пилить на крестах, чтобы углубить свои знания. Читаю кучи книг по алгоритмам, подводным камням и т.п.
Вчера у меня немного полыхнуло, когда я понял, что пилю парсер пары сайтов для сбора статистики на С++. В основном разными "самоделками" пользуюсь я, да пара друзей.
Подскажите, есть ли аналогичный язык, к-й позволит иметь кроссплатформу на деле не так часто нужна работа под линукс, но иногда необходима, т.к. ноут у меня очень слабый и на нём стоит линукс, язык должен быть компилируемым и не должно быть прослойки, как в JVM.

Пока из всего, что я пробовал доставил больше всего питон. Но это скрипты, а дрочить PyToExe как-то не православно, как и заставлять знакомых под виндой ставить себе интерпретатор. Но пока это лучшее, что я встречал.
Есть ли какой-то путь?
sageАноним 05/01/15 Пнд 19:29:33 #713 №422536 
>>422525
Но зачем? Только лишь потому что долбоебы с сосача хают кресты?
sageАноним 05/01/15 Пнд 19:33:41 #714 №422539 
>>422536
И вообще, http://habrahabr.ru/post/190044/
sageАноним 05/01/15 Пнд 20:51:21 #715 №422566 
Есть такой код:

bool Board::Choose_color()
{
int side;

while (true)
{
cout << "Выберите сторону:" << endl;
cout << "1. Белые" << endl;
cout << "2. Черные" << endl;
cin >> side;

if (side == 1)
return true;
else if (side == 2)
return false;
else
cout << "Для выбора цвета необходимо ввести 1 или 2" << endl << endl;
};
}

Проблема, по ходу, с cin << и типом данных, потому что программа иначе себя ведет, если установить side в тип char. Короче, если пользователь вводит некоторое число, кроме 1 и 2, ему предлагают заново ввести число и все тип топ. Но если на ввод подается буква - начинается лютый пиздец с бесконечным потоком "выберите цвет". Если из инта сделать чар, то при вводе нескольких цифр/букв нас спросят про цвет ровно такое же количество раз. Почему так?
Аноним 05/01/15 Пнд 22:07:41 #716 №422620 
>>422566
#include <iostream>
using namespace std;
int main()
{
int var = 0;
cout<<"Enter integer: ";
if (!(cin>>var))
cout<<"Bad input! Expected integer."<<endl;
else
cout<<"Your integer: "<<var<<endl;
return 0;
}

Читай референсы.
Ебал в рот макаку за выпил [code]
Аноним 05/01/15 Пнд 22:18:22 #717 №422625 
>>422536
Ну мне интересен именно более удобный инструмент. С требованиями, к-е я описал.
Как бы то ни было, но решение простейших задач решается в большее кол-во строк.
На питоне тестил формошлёпство через tkinter и работу с HTTP.
По сравнению с теми же wxwidgets и QT всё делается гораздо удобнее. Хотя большие проекты на питоне, скорее всего, выглядят как говно.
Может правда есть что-то, что имеет массу простых средств, при этом быстро работает и не требует писать тонны строк? Способное работать под Линем и виндой, не тянущее за собой подобие JVM и разные интерпретаторы.
sageАноним 05/01/15 Пнд 22:21:15 #718 №422628 
>>422625
Не бывает такого. Пользуйся пистоном и не выебывайся, для небольших задач, делающихся на коленке за пять минут, - самое то.
Аноним 06/01/15 Втр 09:31:55 #719 №422724 
Подскажите как на Qt сделать приложение на андроид. Как там вообще обычные виджеты будут выглядеть? У меня сомнения. Нужно например сделать календарь, сетку дней как в стандартном приложении Calendar. Qt вообще приспособлено для этого или придётся что-то другое учить?
sageАноним 06/01/15 Втр 10:15:09 #720 №422727 
>>422724
Читай: http://qt-project.org/wiki/Android
Аноним 07/01/15 Срд 00:26:36 #721 №422926 
Анон, нужна помощь советом. Подскажи литературу по С/С++ с самых азов (какие операции что делают, как это всё работает) и до победного.
Аноним 07/01/15 Срд 03:21:47 #722 №422954 
>>422926
Прата
Аноним 07/01/15 Срд 05:08:30 #723 №422978 
Продублирую, пожалуй, из ньфаготреда:
Борщ погромач!
Есть один проект на плюсах под 2010 студию, есть dll используемые в проекте. Возможно ли как-то принудить студию включить эти dll-ки в готовый бинарник, именно внутря бинарника, а не просто в целевой каталог скопировать при постбилде, и как это сделать?
Аноним 07/01/15 Срд 05:34:44 #724 №422981 
>>422978
Компилируй из сырцов в статику или делай дропболл, который будет распаковывать все твое говно, в тмп или сразу в память, и запускать его.
Касаемо последнего способа, есть инфа, что будешь послан нахуй антивирусом.
Еще есть либы dllpack и dll2.
Ну а вообще, нахуй это надо-то?
Аноним 07/01/15 Срд 10:17:45 #725 №423010 
>>422978
Срасибо анон
Аноним 07/01/15 Срд 13:49:19 #726 №423046 
Плюсаны, где скачать книгу programming principles and practice using c++ second edition? Нигде не могу найти, подсобите, пожалуйста.
Аноним 07/01/15 Срд 13:56:47 #727 №423050 
>>423046
Все, нашел бесплатно без смс.
Вы не подумайте чего, я даже покупаю книги иногда, но тут дорого.
https://kickass.so/bjarne-stroustrup-programming-principles-and-practice-using-c-2nd-edition-t9512832.html
Аноним 07/01/15 Срд 15:09:58 #728 №423074 
>>422981
> Компилируй из сырцов в статику
Ебааать я дебил! Добра тебе анон!

> Ну а вообще, нахуй это надо-то?
Небольшая прога, которая таскает за собой opencv, а последняя представляет собой кучу dll-ок, если использовать больше 1-2 функций. Да, там есть прямо из коробки скомпиленные либы для статической линковки, но я: 1 — Забыл про них; 2 — сделал несколько мелкоправок вставил костылей и грабель, ага.
Аноним 08/01/15 Чтв 05:29:02 #729 №423236 
14206841424410.png
Котаны, объясните маминому погроммисту-перваку, почему моя программа так странно себя ведет? А именно, появляются неизвестно откуда берущиеся пробелы и запятые. Понимаю, что дело в потоке, но нихуя об этом не знаю, а рандомное использование слов, найденных в интернетах, лишь усугубляют ситуацию - после того, как в 27 строчке дописал "cout.clear();", мой код вообще перестал отображать вводимые мною символы, даже перепостроение не помогло.
VS2008, если это имеет значение.
http://pastebin.com/MGb4E24Y
sageАноним 08/01/15 Чтв 08:23:24 #730 №423254 
>>423236
Чтобы использование слов не было рандомным, читай учебник. Прямо сейчас качай и начинай читать.
Аноним 08/01/15 Чтв 15:35:04 #731 №423321 
14207205045340.jpg
Плюсаны, мне оче стыдно, я уже пару лет пишу сурьёзный говнокод на крестах, но так и не знаю, как посмотреть код STL.
Например, хочется мне узнать, как в std::list работает метод size().
В своём модном QtCreator по F2 открываю файл stl_list.h, вижу в реализации
return std::distance(begin(), end());
Далее хочу посмотреть, что такое std::distance, но тут Qt по F2 уже ничего не находит. Что за хуита? Где мне посмотреть реализацию std::distance?
Аноним 08/01/15 Чтв 17:50:21 #732 №423357 
>>423321
Это проблемы QtCreator'а. Ты, наверное, шаблонный код не часто в нем пишешь. Он большую часть кода из Буста, к примеру, не видит. Приходится в слепую писать. Что с этим делать не знаю, я уже давно смотрю какую-нитбудь IDE на замену. Но пока остальные не вставляют сразу, а разбираться как-то лень.
Аноним 08/01/15 Чтв 17:53:25 #733 №423359 
>>423357
А, кстати. Если у тебя из чужого хидера что-то не видно, то просто напиши где-нибудь у себя эту функцию/класс/etc и тогда жмакни F2. Часто помогает. Вот я смог так std::distance посмотреть. Если коротко, то там ничего такого нет, просто return last - first;
sageАноним 08/01/15 Чтв 18:17:37 #734 №423371 
>Смотрят код прямо из IDE
Обоссал.
Аноним 08/01/15 Чтв 19:08:47 #735 №423388 
>>423371
Ооо, vim-мартыхан порвался?
sageАноним 08/01/15 Чтв 19:33:01 #736 №423400 
>>423388
Нет, я тоже QtCreator'ом пользуюсь.
Аноним 08/01/15 Чтв 22:28:39 #737 №423487 
>>423400
ну тогда не выёбывайся, а скажи, что не так
sageАноним 08/01/15 Чтв 22:49:42 #738 №423495 
>>423487
Объяснять что-то мелкобуквенному агрессивному долбоебу? Пфф.
Аноним 08/01/15 Чтв 22:55:50 #739 №423498 
>>423495
Охуеть, каких петушков сюда завезли. Сначала приходит и сикает на всех, а потом обвиняет в агрессии. Маня, нахуй ты тогда вообще сообщение написал?
sageАноним 09/01/15 Птн 09:11:31 #740 №423589 
>>423498
Очевидно, чтобы обоссать тебя.
Аноним 09/01/15 Птн 11:35:18 #741 №423607 
>>422724
2gis поставь для примера, он на Qt построен. Внешне отличается от обычной жабапрограммы. Прокрутка списков хуёвенько реализована, в частности.
Аноним 09/01/15 Птн 23:53:09 #742 №423893 
Напишу прогу на диплом/курсач на халяву на плюсах. Если тема понравиться.
sageАноним 10/01/15 Суб 06:48:46 #743 №423933 
>>423893
>ться
Обоссал.
Аноним 11/01/15 Вск 08:50:25 #744 №424228 
Привет. Я тут перекатываюсь на плюсы и у меня появились 2 вопроса:
1) Мне нужно написать приложение c OpenGL под винду. Мне не хочется разбираться с Qt, поэтому, собственно, спрашиваю: Какую технологию мне юзать? Думал над WinForms в VS, но я не понял, как там настроить контекст(ну, в какой элемент и как выводить графику). Посоветуйте что-нибудь пожалуйста.
2) Есть возможность получить 2 книги:
Modern C++ Design: Generic Programming and Design Patterns Applied - Andrei Alexandrescu
и
C++ Coding Standards: 101 Rules, Guidelines and Best Practices - Gerb Sutter
Стоит ли их читать? Пока что прочёл Шилдта по С++ и Effective C++ Мэйерса.
А, и еще. Что стоит прочитать по С++11/14? Или может просто еще какие-то полезные книги/источники посоветуете?
Аноним 11/01/15 Вск 13:50:15 #745 №424253 
Господа. Хочу автоматизировать аквариум. На ардуину +реле запилить для начала включение отключение света.
Я вижу это так:

Свет(вкл);
Sleep (10 часов);
Свет(выкл);
Sleep(12 часов);
ну и по кругу так. Все правльно делаю?
Аноним 11/01/15 Вск 15:17:56 #746 №424281 
>>424253
А там нету встроенных часов?
Просто sleep(10 часов) выглядит устрашающим. К тому же твой код будет зависеть от того, когда ты включишь девайс.
Я бы делал
while(clock::now() < 23:00)
sleep (10 секунд)
Аноним 11/01/15 Вск 17:42:22 #747 №424312 
>>424281
Хуй знает то или нет, но:
http://playground.arduino.cc/Code/Time
Ну и меняешь состояние реле в ~23 и ~12 часов, например.
sageАноним 11/01/15 Вск 19:00:56 #748 №424344 
>>424228
Учи Qt, он в разы проще шиндошс-дрисни, книги выкинь к хуям и пиши код. Я серьезно.
Аноним 11/01/15 Вск 20:19:18 #749 №424364 
Параметры по умолчанию для функции/конструктора нужно писать в хедере или в срр файле?
Аноним 11/01/15 Вск 20:53:58 #750 №424374 
>>424364
В хедере, ибо тот, кто будет использовать твой код ололо, никто не должен без надобности лезть в твой cpp-файл. Что уж говорить о том, когда ты поставляешь либлиотеку.
>>424253
Алсо, поясни за ардуину. Это то же самое, что и распберри пи? На чём там можно код писать? Я задумываюсь взять, но боюсь, что в итоге будет на полке стоять грузом.
Аноним 11/01/15 Вск 21:26:15 #751 №424386 
2 часа писал врапер вместо того, чтобы унаследовать. Теперь я понимаю, насколько важно ПОНИМАЕ принципов ООП.
sageАноним 12/01/15 Пнд 04:14:28 #752 №424460 
>>424374
>на полке стоять
У меня уже года три в шкафу лежит. Помигал диодом и убрал. Не покупай это говно, оно бесполезно.
Аноним 12/01/15 Пнд 11:25:10 #753 №424505 
Програмач, помоги с wxWidgets.
У меня есть главный Frame, он идет wxBORDER_NONE. Протрахав мозги с возможностью таскать это окно, я подсмотрел в примере и сделал таки.
Но! Окошко можно затащить за панель таскбара, и потом оттуда хрен вытащишь. Нативные окна затащить туда нельзя, курсор останавливается на границе с таскбаром, вот хочу так же сделать, но не знаю как. Пробовал через wxDisplay, но у меня руки из жопы, ничего хорошего не получилось. Спаси, анон!
BTW: Если ты хорош в С++, ООП и wxwidgets, и не прочь оказать мне помощь по этим вопросам - оставь контакты, за беспокойство заплачУ.
Аноним 12/01/15 Пнд 14:40:45 #754 №424552 
>>424505
>wxWidgets
Это и есть корень проблемы.
Аноним 12/01/15 Пнд 17:42:34 #755 №424577 
>>424552
>>QT
>Это и есть корень проблемы
>>GTK
>Это и есть корень проблемы
>>C++
>Это и есть корень проблемы

Большинство проблем мне решить удалось, да и то, они возникали и возникают из-за моей неопытности, ибо я похапе-быдлокодер:) Своими силами они решаются очень долго, а мне надо побыстрее, поэтому готов вознаграждать за помощь
sageАноним 12/01/15 Пнд 21:18:26 #756 №424627 
>>424577
Нет, то что ты перечислил не является корнем проблемы. Разве что GTK, хотя в принципе сойдет.
Аноним 13/01/15 Втр 00:01:48 #757 №424663 
Есть тут кто можешь ответить на ньюфагский вопрос быстро? Есть живые?
Аноним 13/01/15 Втр 00:02:14 #758 №424665 
>>424663
>кто может
быстрофикс
Аноним 13/01/15 Втр 00:04:46 #759 №424666 
>>424663
Ньюфаг ответит на вопросы ньюфага, бро.
Аноним 13/01/15 Втр 00:12:24 #760 №424669 
>>424666
>666
Сатана, простой вопрос, как бы мне считать посимвольно ввод чаров, но записать его в одну ячейку массива как целое слово.
Вот держи, пока что записывается просто символ. Там с коментами. Кстати забыл сказать, что язык параша СИ. Если кто может помочь, то пожалуйста сделайте это.
http://pastebin.com/hjt87MgR
Аноним 13/01/15 Втр 00:20:07 #761 №424671 
>>424669
И сразу вдогонку вопрос, реалочить мне нужно каждую ячейку на длинку слова? Типо чардлинаслова?
Аноним 13/01/15 Втр 01:14:59 #762 №424679 
>>424669
>>424671
У тебя какой-то дерьмовый код, ну да ладно.
Во-первых, почему у тебя инкрементируется "skokslov" только когда попадается символ новой строки? И потом ты записываешь сивол array[skokslov]? Хуйня какая-то. Ты должен инкрементировать его каждый раз, когда ты получаешь символ. А когда попадается новая строка или пробел, то выходить из своего кривого цикла. Или это какая-то мНоГоХоДоВоЧкА и я просто не понимаю.
Во-вторых, хорошо бы проверить что у тебя возвращает realloc.

Аноним 13/01/15 Втр 01:18:50 #763 №424680 
>>424679
Нет, вопрос же в другом, мне нужно чтобы записывались слова в отдельные ячейки массива, именно поэтому только когда он видит новую строку скокслов инкрементируется, просто посимвольно записываю, если нужно по другому ты скажи.
Аноним 13/01/15 Втр 01:22:07 #764 №424681 
>>424679
Бля, я не то скинул, вот то и в этот раз точно с комментариями.
http://pastebin.com/umFnXnk5
Аноним 13/01/15 Втр 01:23:38 #765 №424683 
>>424669
http://pastebin.com/1dTgV10Q
Криворукая сотона ответил.
Аноним 13/01/15 Втр 01:25:06 #766 №424684 
>>424683
Если я конечно понял, что тебе нужно. Если только алфавитные символы, то всё ок. Если ещё и цифры нужны, то добавь
isalpha(input) || isdigit(input)
Аноним 13/01/15 Втр 01:29:17 #767 №424687 
>>424669
Oh wait. Или тебе двумерный массив строк нужен?
Аноним 13/01/15 Втр 01:31:37 #768 №424688 
>>424687
Ну смотри, задание такое, на input идут слова, допустим так.
Vsem
privet
ITT
И я хочу, каждое слово записать строкой в отдельную ячейку массива, так чтобы, массив[0]='Vsem', массив[1]='privet', массив[2]='ITT". Вот что я хотел. Но вместо этого у меня получается записать только один символ из слова.
Аноним 13/01/15 Втр 01:51:27 #769 №424689 
>>424688
Ты понимаешь, что в С нету string? У тебя массив символов.
Чтобы сделать массив строк - тебе нужно создать массив массивов char.
То-есть что-то типа этого:
char array = (char) malloc(кол-во слов);
for(int i=0; i<кол-во байтов; ++i){
array = (char)malloc(кол-во символов в слове);
}
И дальше как-то там заполняешь.
Аноним 13/01/15 Втр 01:55:44 #770 №424690 
>>424689
Сука, лол. Все символы сбились нахуй. Секунду.
http://pastebin.com/YEQauf3s
Дальше подумай сам как и когда там удлинять массив/добавлять в него что-то.
Аноним 13/01/15 Втр 02:01:41 #771 №424693 
>>424690
Спасибо няша, наверно именно это мне и нужно
Аноним 13/01/15 Втр 02:05:48 #772 №424696 
>>424690
В общем, тебе нужно немного поменять.
0) Создай массив, как я тебе написал небольшой длины. Например, кол-во слов = 1, длина этого слова = 10.
1) Создай переменную index.
2) Каждый раз, когда ты считываешь нужный тебе символ, инкрементируешь index и записываешь его в array[номер слова][index] = символ.
3) Если длины слова не хватает(index больше его длины при инициализации) - делаешь realloc.
4) Когда попадается символ пробела или новой строки - обнулешь index, делаешь realloc для кол-ва слов(в начале у тебя 1 строка), инкрементируешь номаер слова. Дальше повторяется всё заново.
Аноним 13/01/15 Втр 02:24:29 #773 №424699 
>>424696
Тупой вопрос, но, ведь это получится не двойной массив, а массив массивов? Как мне его допустим вывести, чтобы просто все слова вывелись? что то вроде, пока не пустое место - массив выводи?
Аноним 13/01/15 Втр 02:56:33 #774 №424704 
>>424699
Да, это массив массивов.
http://pastebin.com/XfxmaJsr
Аноним 13/01/15 Втр 02:58:06 #775 №424705 
14211070860070.jpg
>>424704
Благодарю
Аноним 13/01/15 Втр 03:12:36 #776 №424707 
>>424699
Кривой сотонинский трипл снова тут. Держи.
http://pastebin.com/8TPgdWbK
https://ideone.com/OFlYKY

Скорее всего где-то обосрался с выделением памяти, ибо упорот уже, могут выпадать сегм фолты. Ты там глянь краем глаза. А так вроде всё нормас.
Аноним 13/01/15 Втр 03:14:22 #777 №424708 
>>424707
Бля. Только сейчас фэйл заметил.
Строка 19. Нужно заменить
(array)[rows_amount] = (char) malloc(sizeof(char)100);
на
(array)[rows_amount] = (char) malloc(sizeof(char)strlen(line));
Дабы выпилить ограничение на длину строки.

Ну и проверки на маллоки и реаллоки хорошо бы тоже иметь, но для лабы норм.
Аноним 13/01/15 Втр 03:17:44 #778 №424709 
>>424708
Сука. Ни [code], ни звёздочек. Абу мудила. Ну ты понял. Вместо статики на 100 символов, выделяется кол-во байт, к-е занимает строка.
Всё остальное похерил Абу.
Аноним 13/01/15 Втр 03:21:35 #779 №424710 
14211084956710.png
>>424708
Спасибо, няша. Ты кстати снова взял трипл. Лучей добра, пойду разбираться.
Аноним 14/01/15 Срд 14:54:09 #780 №425023 
Суть такова. Функция при конструировании объекта передает конструктору число полученное при помощи rand(). Результат при каждом вызове rand() один и тот же. srand( time(NULL) ) прописал . ЧЗХ?
http://ideone.com/j3dwRO
Аноним 14/01/15 Срд 15:38:01 #781 №425034 
>>425023
Напиши srand не в функции генерации, а где-нибудь пораньше. А то получается, что он вызывается каждый раз и потом сразу rand. То-есть там разница получается одна и та же.
Аноним 14/01/15 Срд 16:04:02 #782 №425040 
>>425034
Спс. Помогло. Отпиливаю костыли.
Аноним 16/01/15 Птн 10:45:46 #783 №425607 
Сап /pr/. Подскажите пожалуйста бесплатный обфускатор для C++. Спасибо!
sageАноним 16/01/15 Птн 13:21:54 #784 №425649 
>>425607
Код на крестах автоматически обфусцируется прямо во время написания.
Аноним 17/01/15 Суб 10:26:36 #785 №425909 
Программач, ночь не спал, помоги.
Есть один класс в нем есть map

typedef struct NewStruct{
unsigned id;
} STRUCTAZAZA;
typedef map<size_t,NewStruct> NewType1;
class class1
{
NewType1 _mapStorage;
}

Как правильно организовать доступ к _mapStorage соблюдя инкапсуляцию, или просто нахер её и набыдлокодить прямой доступ к переменной класса?
Аноним 17/01/15 Суб 12:16:59 #786 №425931 
>>425909
protected
Аноним 17/01/15 Суб 12:46:43 #787 №425935 
>>425909
>typedef struct
>STRUCTAZAZA
>typedef map<size_t,NewStruct> NewType1;
ненужно
Аноним 17/01/15 Суб 13:06:42 #788 №425939 
14214892024240.jpg
>>425649
sageАноним 17/01/15 Суб 15:30:27 #789 №425961 
>>425939
Да ладно тебе, смешно же получилось. Я сам на крестах пишу, что плохого в самоиронии?
>>425909
Доступ откуда? Из пизды мамки твоей?
comments powered by Disqus

Отзывы и предложения