К примеру есть вектор:
vector<int> alfa;
как узнать тип его элементов до появления первого элемента. Типа:
decltype(alfa[0]);
Посмотреть на <int>
в скобках :)
Вообще-то decltype
не вычисляет само выражение, так что до появления элемента использовать alfa[0]
можно, но... Это будет ссылка.
Я бы делал так:
decay_t<decltype(alfa[0])> b;
Но не проще ли для вектора (и прочих стандартных контейнеров) использовать его value_type
?
Для примера определим версию функции вывода содержания STL контейнера:
template <class V>
void show(V v)
{
std::copy(v.begin(), v.end(),
std::ostream_iterator<typename V::value_type>(std::cout, " "));
std::cout << std::endl;
}
std::ostream_iterator
в аргументе шаблона должен иметь тип элементов контейнера.
При использовании не важно какого типа контейнер и какого типа его элементы...
int main()
{
std::vector<int> v1{1, 2};
std::vector<std::string> v2 {"first", "second"};
show(v1);
show(v2);
return 0;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
В с++ не силен от слова совсем, но понадобился именно этот языкНужно извлечь zip архив и положить рядом с самим архивом
Помогите пожалуйста не понимаю в чем ошибкаНужно сделать функцию, которая вставляет в массив действительных чисел, отсортированный в порядке...
В основном классе MainWidnow определён Qtimer* timerВнутри одного из методов класса timeout связывается с публичным слотом: