Напишите сначала алгоритм обычным языком. У вас большие проблемы с ним. Зачем вы начинаете проверять числа начиная с C - 1. Какой ближайший делитель для этого числа? Я думаю C / 2. Как вы определяете простое число, уверены что верно?
Вы бы описали проблему. Что значит не передается? Куда? В функцию moveCamera? Вы как-то наскоком начали gl изучать, изучите сначала основы, без негатива. Не поняв суть, вы не сможете пользоваться этим языком.
Есть смысл так писать когда происходит присваивание переменной в теле if. Это позволяет убрать ошибки связанные со сравнением(не помню как точно называется) у статических анализаторов. Они напрямую советуют обрамлять присваивание двойными скобками.
Евгений Петряев, нет, просто шаблоны работают немного не так как вы представляете. Шаблоны - это подсказка компилятору как реализовать метод для типа T, если он понадобится. Шаблонов нет в итоговой программе, есть только методы. Но при этом файлы компилируются по отдельности, и в момент компиляции Sorts, компилятор не основывается на других файлах и не знает что надо создать реализацию для int. Когда вы перенесете реализацию в заголовочник, то подсказки будут в каждом файле в котором вы используете шаблон, так как h файл копируется в main, и компилятор сможет создать метод на основании реализации шаблона.
Евгений Петряев, попробуйте перенести реализацию из cpp в h файл и так скомпилировать. У вас на данный момент ругается уже линкер, а не компилятор. Следственно нет реализации метода.
0hquazEd, там описывается способ позволяющий не менять сериализуемый класс, а написать функцию которая принимает его как параметр и пишет в архив. Почитайте non intrusive way. Проблема только в том, что она будет иметь доступ только к публичным данным.
Не до конца понял, что имеется ввиду под менять чужой класс.
1) При выходе за пределы видимости уничтожаются только стековые переменные. С помощью new вы выделяете память на стеке? Если да, то удалится, если нет, то утечка
2) Никогда так не делал, но по логике работы должна быть рекурсия. Думаю вы это сам быстро проверить можете.
Условно говоря, при выходе из области видимости будет вызван деструктор указателя на объект. Что он делает - ничего. Было бы странно если два указателя на один объект удалялись и паралельно два раза удаляли объект.
DIASWORD, вам непонятно что такое исключение или что такое nullptr?
Разместите код в теге code, а не картинкой.
У вас проблема с origPresent и именно его вы решили полностью не показывать.
Slavon7, вы объявляете два массива строк по 20 элементов(20 строк, не букв)
При этом вы заполняете только первый элемент из 20
Далее вы в цикле сравниваете строку со строкой(не букву с буквой) и если строки идентичны, то увеличиваете счётчик. При этом в теле цикла вы сравниваете i и j с элементом, которого не существует
Лучше зайти с другой стороны. Всегда когда ты лочишь мьютекс(обычный), еще раз залочить ты его не можешь. Будешь либо спать, либо UB, в зависимости от того в каком потоке вызвано. Собственно, в твоей структуре, когда разлочится мьютекс, тогда и получат доступ другие потоки. А если у тебя lock_guard - член класса, то значит до деструктора дойдет, да. Главное позаботиться о времени жизни mutex