Векторы в C++ [Урок 12] | Разработка игровых платформ
  1. Доброго времени суток. В связи с появлением спамеров, активация функций новых пользователей (Создавать темы, писать сообщения), теперь будет только после проверки администратором! Для регистрации отписываемся в лс, в вк. vk.com/tehnik777 (Пишем только с реальных страниц)
    Скрыть объявление

Векторы в C++ [Урок 12]

Тема в разделе "С++/С#, HTML, PHP, JavaScript, XML...", создана пользователем Zloo, 6 ноя 2016.

Обсуждение темы Векторы в C++ [Урок 12] в разделе С++/С#, HTML, PHP, JavaScript, XML... на форуме zetta-forum.ru.

  1. Zloo

    Zloo Администратор Команда форума

    Регистрация:
    31 окт 2016
    Сообщения:
    265
    Симпатии:
    158
    Баллы:
    43
    Пол:
    Мужской
    Сайт:
    https://zetta-forum.ru
    VK:
    https://vk.com/tehnik777
    Векторы в C++ [Урок 12]

    Вектор в C++ — это замена стандартному динамическому массиву, память для которого выделяется вручную, с помощью оператора new.

    Разработчики языка рекомендуют в использовать именно vector вместо ручного выделения памяти для массива. Это позволяет избежать утечек памяти и облегчает работу программисту.

    Пример создания вектора


    Код:
    #include <iostream>
    #include <vector>
    
    int main()
    {
        // Вектор из 10 элементов типа int
        std::vector<int> v1(10);
    
        // Вектор из элементов типа float
        // С неопределенным размером
        std::vector<float> v2;
    
        // Вектор, состоящий из 10 элементов типа int
        // По умолчанию все элементы заполняются нулями
        std::vector<int> v3(10, 0);
    
        return 0;
    }
    

    Управление элементами вектора

    Создадим вектор, в котором будет содержаться произвольное количество фамилий студентов.


    Код:
    #include <iostream>
    #include <vector>
    #include <string>
    
    int main()
    {
        // Поддержка кириллицы в консоли Windows
        setlocale(LC_ALL, "");
    
        // Создание вектора из строк
        std::vector<std::string> students;
    
        // Буфер для ввода фамилии студента
        std::string buffer = "";
    
        std::cout << "Вводите фамилии студентов. "
                  << "По окончание ввода введите пустую строку" << std::endl;
    
        do {
            std::getline(std::cin, buffer);
            if (buffer.size() > 0) {
                // Добавление элемента в конец вектора
                students.push_back(buffer);
            }
        } while (buffer != "");
    
    
        // Сохраняем количество элементов вектора 
        unsigned int vector_size = students.size();
    
        // Вывод заполненного вектора на экран
        std::cout << "Ваш вектор." << std::endl;
        for (int i = 0; i < vector_size; i++) {
            std::cout << students << std::endl; 
        }
    
        return 0;
    }
    



    Методы класса vector

    Для добавления нового элемента в конец вектора используется метод push_back(). Количество элементов определяется методом size(). Для доступа к элементам вектора можно использовать квадратные скобки [], также, как и для обычных массивов.

    pop_back() — удалить последний элемент
    clear() — удалить все элементы вектора
    empty() — проверить вектор на пустоту

    Подробное описание всех методов std::vector (на английском) есть на C++ Reference
     

Поделиться этой страницей