Use emplace_back instead of push_back(std::make_tuple())