Форум программистов, компьютерный форум CyberForum.ru

Push_back вектора по указателю - возможно ли - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Не видно определений функций при раздельной компиляции http://www.cyberforum.ru/cpp-beginners/thread1498999.html
Описал класс и его наследника в заголовочном файле; самые громоздкие определения функций вынес в отдельные файлы, однако при компиляции/сборке эти определения не видно из файла с "main". Здесь указан код для студии, однако при компиляции из консоли с помощью GCC - результата тоже ноль. Студия ругается на "неразрешенный внешний символ" (подключение всех pdb-файлов, какие нашел в проекте, не...
C++ Const-параметры в аргументах функции void setAmount(const int _amoutn) А тут уже const излишен, перебор. Добавлено через 3 минуты void setDescription(const std::string& _description) { m_description = _description; } //... std::string& getDescription() { return m_description; } Зачем дублировать? http://www.cyberforum.ru/cpp-beginners/thread1498988.html
C++ Что быстрее? Обращение к элементу массива или к элементу структуры?
Обращение к элементу массива или к элементу структуры? Экспериментирую с кодом и получается примерно одинаково. Что интересно, время на вызов функции do_nothing получилось примерно такое же. Оптимизация отключена. Верен ли вывод, что обращение к элементу массива, элементу структуры и вызов функции занимают одинаковое время? Использую MinGW 4.4 с Qt 4.7.4. #include <iostream> #include...
Fstream в классах C++
Проблема заключается в том, что я не могу использовать fsream в классе, ибо выдаёт ошибку. Код и текст ошибки ниже. Помогите пожалуйста (мб поможете и с самой задачей, условие ниже). Код весь в костылях))) /*-------------------------------------------------------------------*/ Условие задачи: Создать программу, которая будет добавлять/убирать/просматривать ваших друзей с текстового файла...
C++ Fstream в классах http://www.cyberforum.ru/cpp-beginners/thread1498970.html
Проблема заключается в том, что я не могу использовать fsream в классе, ибо выдаёт ошибку. Код и текст ошибки ниже. Помогите пожалуйста (мб поможете и с самой задачей, условие ниже). Код весь в костылях))) /*-------------------------------------------------------------------*/ Условие задачи: Создать программу, которая будет добавлять/убирать/просматривать ваших друзей с текстового файла...
C++ Как работать с функцией SystemParametersInfo? Чтобы установить обои рабочего стола. Пишу вот так: #include "stdafx.h" #include <Windows.h> int _tmain(int argc, _TCHAR* argv) { if (SystemParametersInfo ( SPI_SETDESKWALLPAPER, подробнее

Показать сообщение отдельно
homk
0 / 0 / 0
Регистрация: 15.07.2015
Сообщений: 1
15.07.2015, 02:30     Push_back вектора по указателю - возможно ли
Я хочу объявить вектор в одной функции и работать с ним методами в другой.

Самый простой путь - объявить вектор глобально, что мне не очень нравится. Второй путь - передать в функцию копию вектора, а потом возвращать его обратно. Мне и этот путь представляется неэстетичным, поэтому я хочу передать указатель на вектор в функцию, написав что-то типа

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <vector>
#include <iostream>
 
using namespace std;
 
int function(int *vec)
{
    vec.push_back(3);
    cout << vec[0] << vec[1] << endl;
 
return 0;
}
 
int main()
{
    vector <int> vec;
    vec.push_back(1);
 
    function(&vec[0]);
 
return 0;
}
Однако, я не понимаю, указатель на что мне передавать. Указатель на первый элемент, как в примере выше, мне не нужен, так как push_back не выловит вектор по первому элементу.
Я нашел что-то близкое про vec.data(), однако все же не понимаю, как его использовать.
Я мог бы передать указатель на первую и последнюю ячейку памяти вектора, но что потом с ними делать - хз.

Где я ошибаюсь?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru