Как расширить размер динамического массива типа string в с++
vector<int> v1;
vector<int*> v2
До этого никакой литературы по этим языкам не читал.
Давайте вернемся к серьезному тону и,наконец, ответим на вопрос: кому будет
интересна эта книга? Программирование С++ по ней вы не изучите – для этого есть классические книги Х. Дейтела, Б. Страуструпа, С. Прата и др. Для того
чтобы воспринимать материал, нужно уже знать концепцию объектно-ориентированного программирования и иметь хотя бы небольшой опыт разработки программ на С++ или «близких по духу» высокоуровневых языках – вроде
C#, Java, Python. Неплохо бы знать такие концепции, как лямбда-функции и
многопоточные/параллельные программы.
но очень хочет туда попасть.
Например std::async,
принимает произвольный объект функции, который может выполняться в отдельном потоке. Она использует оператор вызова функции в качестве интерфейса.
Комитет, мог потребовать, чтобы вы выставили, скажем, метод run, но они выбрали оператор вызова функции, потому что он позволяет
универсальному коду использовать идентичные обозначения для вызова функции или объекта функции.
Основная причина, по которой можно захотеть сделать пользовательский тип вызываемым,
заключается во взаимодействии с кодом, который ожидает, что функциональные
объекты будут использовать оператор вызова функции. Вы обнаружите, что многие библиотеки, такие как stdlib, используют оператор вызова функции в качестве интерфейса для объектов, подобных функциям.
Зачем вот так писать?
В этом есть какой то смысл?