Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ChipChop
1 / 1 / 0
Регистрация: 29.09.2016
Сообщений: 111
#1

передать в функцию стек на указателях - C++

13.11.2016, 17:16. Просмотров 164. Ответов 3
Метки нет (Все метки)

Всем привет.

Есть стек, реализованный через указатели.
Необходимо его отправить в две функции не по значению.

Проблема в том, что если я отправляю стек по ссылке или по указателю в первую функцию, то указатели внутри его меняются и вторая функция уже не работает.
Если отправляю по константной ссылке, то он отказывается компилироваться, тк ему надо менять указатели внутри.

Передача по значению создает копию и обе функции отрабатывают штатно, но такой вариант не подходит.
Подскажите как быть, пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2016, 17:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос передать в функцию стек на указателях (C++):

Написать стек на указателях - C++
хочю знать как написать стёк на указателях мне нужно чтобы можно было добавлять новые елемнты сколько угодно а уберать не обязтельно ...

Стек на указателях не компилируется - C++
#include <iostream> using std:: cin; using std:: cout; using std:: endl; struct NodePtr { char Value; NodePtr* Next; ...

Как передать объект "Стек" в функцию? - C++
Интересует такой вопрос, а как передать класс стека в параметр процедуры или функции? например программа, и хочу сделать чтобы она была...

Используя стек, описать функцию проверяющую, является ли стек пустым - C++
Используя стек, описать функцию проверяющую, является ли стек пустым

не могу разобраться как написать функцию сортировки и исправить функцию добавления в стек - C++
#include <iostream> #include<Windows.h> using namespace std; struct NE{ int x; NE *pnext,*ppor,*cur;}; class SPISOK { NE...

Не могу разобраться как передать корректно передать массив из функции в функцию - C++
//--------------------------------------------------------------------------- #pragma hdrstop ...

3
nmcf
5754 / 5065 / 1733
Регистрация: 14.04.2014
Сообщений: 20,749
13.11.2016, 17:21 #2
Программа где?
0
ChipChop
1 / 1 / 0
Регистрация: 29.09.2016
Сообщений: 111
13.11.2016, 17:34  [ТС] #3
Цитата Сообщение от nmcf Посмотреть сообщение
Программа где?
там все сложно с библиотеками dll

C++
1
2
3
typedef void(*FNPTR)(class Stack MyStack);
 
FNPTR fun= (FNPTR)GetProcAddress(hInstMod3, "funcdll");
это в том модуле, который вызывает библиотеку, в которую передается стек
0
nmcf
5754 / 5065 / 1733
Регистрация: 14.04.2014
Сообщений: 20,749
13.11.2016, 18:26 #4
Ну значит передавай копию, если ничего с dll не можешь сделать.
0
13.11.2016, 18:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2016, 18:26
Привет! Вот еще темы с ответами:

Написать функцию, которая могла бы передать значение в другую функцию - C++
как сделать функцию которая бы могла передать значеие в другую функцию ну к примеру a=4*b; где b=sin(fi);

В функцию с переменным числом параметроы передать указатели на функцию - C++
Добрый вечер. По заданию нужно в функцию с переменным числом параметров передать имя функций, которые нужно вызвать. Долго думала,как имея...

Как передать указатель на функцию в функцию - C++
И как с ней работать?

Как передать функцию в функцию? - C++
void MainWindow::_createTextEdit(QWidget *tab, QString text, void (*saveSlot)()) { ... connect(save, SIGNAL(clicked()), this,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.