@RafForce

Возможна ли инициализация без конструктора копирования в данном случае?

Можно ли объединить "строку 1" и "строку 2", чтобы не вызывался конструктор копирования?

int main() {
    size_t m;
    std::cin >> m;
    std::vector<std::tuple<size_t, size_t, size_t>> input(m);
    for (size_t i = 0; i < m; ++i) {
        std::cin >> a >> b >> p;    //  строка 1
        input.emplace_back(std::make_tuple(a, b, p));  // строка 2
    }
}
  • Вопрос задан
  • 135 просмотров
Решения вопроса 1
@RafForce Автор вопроса
Нашел решение:
int main() {
    size_t m;
    std::cin >> m;
    std::vector<std::tuple<size_t, size_t, size_t>> input(m);
    for (size_t i = 0; i < m; ++i) {
        std::cin >> std::get<0> (input[i]) >> std::get<1> (input[i]) >> std::get<2> (input[i]);
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы