• Как сохранить значения нескольких переменных в С++ 17?

    @MarkusD Куратор тега C++
    Никита Савченко , давай снова попробуем порассуждать.
    У тебя есть функция, из которой нужно вернуть несколько значений.
    Вектор - это динамическая структура. Он позволяет хранить произвольное количество однотипных значений.
    Но у тебя-то в функции количество значений известно. И значения из функции можно ведь вернуть разных типов.

    Раз речь зашла о JS, то как там из функции возвращается несколько значений?
  • Как можно усложнить программу?

    @MarkusD Куратор тега C++
    Xyyax1337, нет не нужно. Перепиши этот код сам, пойми алгоритм, реши задание своими силами.
    Ты чего конкретно этим своим действием хочешь добиться?
  • Как сохранить и получить потом шаблонный тип, переданный методу класса?

    @MarkusD Куратор тега C++
    toster_bodnar
    Не думал, что в вашем сообществе так всех раздражает слово "привет"

    Плевать под ноги прохожим - нормально? Не отталкивает от нормального общения? Курить в лицо беременной женщине на остановке - это нормально? Последствий не возымеет? В доску бухой мужик, слоняющийся по парку и пристающий к людям - это, я так понимаю, тоже нормально? Ну ничего такого же, верно? Может быть и разбой с бандитизмом - это нормально?
    Или все-таки это все не нормально?

    В любом сообществе существуют правила. И правила принято соблюдать. Вот что является нормальным.
    Нарушая принятые в обществе правила, ты бросаешь обществу вызов - т.е. ведешь себя вызывающе. Раздражает именно вызывающее поведение, а не что-то конкретное. Ты систематически нарушаешь правила и с каждым разом недовольство твоими действиями становится только больше. Знать и соблюдать правила обязан каждый участник.
    Ты - не исключение.

    А решение ты выбрал верное. Единственно верное в твоем случае. Тебе достаточно было просто самостоятельно разобраться с документацией языка или найти что-то похожее на SO.
  • Как сохранить и получить потом шаблонный тип, переданный методу класса?

    @MarkusD Куратор тега C++
    toster_bodnar, вот честно, если бы ты позаботился о соблюдении правил (П3.4, П3.6), то у тебя уже было бы качественное и быстрое решение вопроса.
    Но правила ты решил не соблюдать и решения у тебя нет.
  • Всё, что нужно знать о разработке собственной игры и где найти команду?

    zeatee0, и вот смотри. Это не для того чтобы тебя отговорить делать то что тебе хочется.
    Но у меня знакомые 3-5млн вкладывают в свой дом и свою землю. И им этого не хватает. А ведь свой дом - это куда более осязаемая инвестиция. Детям достанется, наконец.
    У игры же есть высокий шанс не отбиться потому что она не найдет свою целевую аудиторию.
    Я это пишу для того чтобы у тебя была картина геймдева и с этой стороны тоже.
  • Всё, что нужно знать о разработке собственной игры и где найти команду?

    zeatee0, нет. Этого хватит примерно на месяц-полтора работы.
    W&M - это очень глубокий с т.з. технологий проект. Он только выглядит простым, внутри все очень и очень сложно.
    За год-полтора, даже используя уже готовые инструменты, можно будет собрать только MVP подобного проекта без каких-либо намеков на окупаемость. Это будет просто внутренний прототип. А ведь за готовые инструменты, вроде Unity, Spine, PH и прочего-прочего еще надо отвалить немалые деньги. Пиратское использовать просто нельзя.
    Плюс люди. Непрофессионалы или люди не из отрасли наваяют такого, что дальше MVP этот проект и не двинется.
    А профессионалы стоят дорого. Закладывать стоит, как минимум, по 3-4млн в месяц, минимально года на три-четыре.
    Это будет около 200млн просто чтобы было что загрузить в магазин. Реклама еще около 100млн для нашего рынка. Если не для нашего, то будет уже около 100млн зеленых, как минимум.
    Я знаю один проект, который уже 8 лет пилится группой из 22 человек. Там расходов на полярда рублей в месяц уходит, а они еще ни копейки не заработали.

    Обходные пути есть, чтобы не тратить такие дикие для частника деньги. Но все обходные пути сразу подразумевают у тебя глубокую экспертизу в разработке игр. Именно поэтому проекты вроде Loop Hero и Gedonia появляются не как грибы после дождя, а единицами за года.

    И нет. Про ярды зелени я не перегнул. Потому что я там выше прикинул по самому минимуму. Половину сметы, а то и больше, съедает инфраструктура и ее поддержка. Сервера сборки, сервера тестирования, инструменты сборки и мониторинга, системы контроля качества, инструменты поддержки разработки и - самое сложное - интеграционная среда. Это все нужно даже для юньки и анриала.
    Бюджет одной игры раздувается до безобразия, чуть только подумаешь о том чтобы разработка игры была удобной и надежной.
  • Какой метод сжатия текстур подходит для моего случая?

    Карлиндоу Мэрлифи
    под мобилки

    DXT сразу из чата вышел.

    Может надо ещё на другие моменты смотреть?

    Надо. "Под мобилки" - это все равно что ничего не сказать.
    Какие у тебя целевые платформы? Если сразу и iOs, и Android, и Fuchsia, и Switch со Steam Deck и Razer Edge, то вести у меня для тебя печальные будут.
    Опираться нужно на используемые архитектуры процессоров в целевых платформах, на используемые ОС в платформах, на показатели общей производительности целевых устройств целевых платформ.
  • Почему переопределение метода без virtual -- это не переопределение?

    @MarkusD Куратор тега C++
    Изначальный метод все еще можно вызвать у объекта класса (если привести тип).

    Или если использовать полную квалификацию имени. :)
    Мой ответ про квалификацию имен.

    Daniel~, твой вопрос именно про квалификацию и разрешение имен в целом.
  • Как исправить ошибку "main: функция не может быть перегружена"?

    @MarkusD Куратор тега C++
    wasabichen, вот смотри. Я ведь не спросил тебя, знал ли ты или нет что так можно.
    Я тебя спросил: зачем ты написал две функции с одним именем.
    Наш язык многогранен и подразумевает множество трактовок. Я специально задал вопрос в короткой форме чтобы увидеть ход твоих мыслей. Ты плаваешь, из слов других людей берешь только то, что сейчас хочешь, а не то, что люди говорят. Тебе сложно будет развиваться в программировании с таким подходом. Старайся понимать слова только так, как они звучат.

    Теперь я задам свой вопрос в более точной форме.
    Какого поведения от кода ты хотел добиться, когда писал вторую функцию main?
    Я не смогу ответить на твой вопрос пока не увижу твой ответ на свой вопрос.
  • Как отклеить деталь (вентилятор) склеенным секундным клеем?

    Попутно. В аптеке можно купить Димексид, который идеально подходит для полного растворения цианоакрилатных клеевых составов.
    Отпускается без рецепта и стоит дешевле чем "профессиональное" средство для его растворения.
  • Ошибка C++ zsh: segmentation fault "/var/folders/y7/hbkvnly103qb7050nfdxcx100000gn/T/"tempCodeRunnerFile?

    @MarkusD Куратор тега C++
    m4t1k_matik, тебе надо исправить свой вопрос, а не добавлять комментарии.
    Исправь в вопросе нарушения П3.2, П3.4, П3.8, П4.1 и П5.12 регламента.
    Касательно П3.8, код большой, оформи его по правилам и заверни в спойлер.
    Касательно П4.1, удали дубль вопроса.
    Касательно 5.12, "курсач" за тебя здесь писать никто не будет. С такими запросами тебе на фриланс. Локализуй свою проблему и сам ее пойми, для начала. За тебя это здесь делать никто не будет.

    Каждое твое нарушение только отдаляет тебя от решения вопроса. Исправить нужно все.
  • Как вернуть несколько значений из функции?

    @MarkusD Куратор тега C++
    Никита Савченко,
    Стандарт использую - С++ 17.

    Да, стандарт языка кардинально влияет на доступные возможности. Смотри вот.

    Допустим у тебя есть твоя std::tuple<int, int, int> generator(). Это то, о чем написал Wataru. Принять результат ты можешь в такой же кортеж (C++11), можешь воспользоваться обобщением и инициализацией копией (C++11), а можешь воспользоваться std::tie[?] для C++14 или структурным связыванием из C++17.
    И все будет зависеть именно от используемого тобой стандарта языка.

    И вот, в C++17 у тебя получится такой код:
    int main() {
    	const auto [ answer, x, c ] = generator();
    	cout << answer << " " << x << " " << c;
    	return 0;
    }


    При том условии, что ты правильно воспользуешься техникой NRVO, структурное связывание у тебя не приведет к скрытому копированию значения, а все три поля из main будут сразу инициализированы внутри generator.
  • Почему не возникает ошибка при вводе слова больше длины чем выделена память?

    @MarkusD Куратор тега C++
    chaturanga , потому что
    Examples of undefined behavior are data races, memory accesses outside of array bounds ...

    Программа не должна генерировать ошибку, т.к. ты допустил в ее коде неопределенное поведение. Допуская в коде UB, ты буквально отпускаешь поводья всей этой повозки.
  • Как вернуть несколько значений из функции?

    @MarkusD Куратор тега C++
    Никита Савченко,
    не работает в общем-то ваше решение

    Да нет, решение работает. Только Саша, по своему обыкновению, не подумав написал первое что ему в гугле попалось.

    При передаче по ссылке тебе не надо возвращать значения, они доступны внутри функции для прямого изменения. Это - сублимация возврата нескольких значений, используемая в палеозойской древности стандарта C++98.
    Настоящий возврат набора значений описан только в ответе Wataru.

    Но вот в чем дело.
    Код return answer, x, c; не должен был родиться в твоем мозгу для функции с типом результата void. Написанное тобой в примере выдает твою полную безграмотность в языке. Даже большую, чем у Саши.
    И в этом плане настоящий возврат нескольких значений для тебя просто недосягаем, потому что ты просто не проходишь по знаниям для его использования. Ты ведь даже не знаешь, какой конкретно стандарт C++ ты используешь. А ведь именно от этого зависит решение твоего вопроса.
  • Как не обрезать стркоу после \0?

    @MarkusD Куратор тега C++
    Sneiksus , а код у тебя совсем засекречен?
    Давай лучше код посмотрим. Особенно код чтения и код того, как именно ты определяешь что посылается только 10 байт.
  • Какой именно идентификатор типа правильно называть dependent scope type?

    @MarkusD Куратор тега C++
    Qubc, вот оно. Все верно.
    У тебя шаблон, у шаблона есть параметры. Если какой-то из типов в твоем шаблоне зависит от результатов вывода параметров шаблона, такой тип становится зависимым.
    T ведь - это просто какой-то тип, сразу транслятор его не определяет. А аргументом T может быть, например, std::vector<int>, вложенные типы которого выводятся только когда на них ссылаются и сами являются инстанцированиями шаблонов.
    Т.е. в строке T::Iterator только написано тривиально, а логика там очень серьезная скрыта.

    Параметры шаблона создают контекст инстанцирования, от состояния которого будет зависеть любой вложенный тип шаблона, в определении которого параметры шаблона и используются. Поэтому такие типы и называются зависимыми.
  • Как сделать правильную переменную?

    @MarkusD Куратор тега C++
    gazzzzzzzz
    Помогите пожалуйста

    Тут это не работает, т.к. нарушает П3.4 регламента работы сервиса.
    Код и не твой, и не от преподавателя. Это код на очень старом C, как C++ он собираться не будет. Код взят из сети, гуглится сразу.
    Твой вопрос таковым не является, т.к. является заданием и нарушает П5.12 регламента.