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

C++

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

После int функции переменная, проинициализированная снаружи, не обновляется - C++

01.06.2017, 12:47. Просмотров 239. Ответов 3
Метки нет (Все метки)

Здравствуйте.
Собственно сабж. Обработчик события нажатия на кнопку.

C++ (Qt)
1
2
3
4
5
6
7
 Gener G(1,1);
    int key_move[16]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}; //сорри за такой массив, что бы с отладчиком проще работать
    int key_sum;
    Keys K(1,1,&key_move[16],1,1);
    K.do_key_sum();
    K.do_key_move();
    K.write_keys(key_sum,&key_move[16], str_dir);
Извращалась уже над кодом как фантазии хватило. функции do_key_sum() и do_key_move() возвращают новые значения key_move и key_sum. Отладчик подтвердил, что внутри функций все срабатывает, но здесь он переназначатся не хотят ни в какую. или может не надо переназначать, а другие передать напрямую в последнюю функцию...Не знаю, что делать. Я программирую от силы месяца три и похоже просто не понимаю картину в целом.
Помогите, пожалуйста, чайнику.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.06.2017, 12:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос После int функции переменная, проинициализированная снаружи, не обновляется (C++):

Public переменная, или private переменная и функции get/set - C++ Builder
Пишу свой класс, который потом будет много где использоваться и пытаюсь осознать, как правильнее и, что самое главное, почему. Вариант 1:...

Глобальная переменная INT - C++ Builder
Всем привет, желаю классно провести Новый Год! У меня появилась маленькая проблемка. Хочу сделать программу для учебы, что-то вроде "своя...

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

Зачем преобразовывать itsVal в int, если эта переменная и так объявлена как тип int - C++
// Оператор преобразования #include <iostream> using namespace std; class Counter { public: Counter(): itsVal(0) {} ...

Глобальная переменная после вызова функции меняет значение - C++
До flag = 0; odnorod_pril(buffer1); После int odnorod_pril(char *buffer) { flag точно равен 1, проверял в памяти и просто...

Почему локальная переменная не уничтожается после выхода из функции - C++
В функции создается строка char *pn = new char;. Мне непонятно почему при выходе из функции эта строка доступна в main()? Почему эта строка...

3
hoggy
6717 / 2900 / 497
Регистрация: 15.11.2014
Сообщений: 6,525
Завершенные тесты: 1
01.06.2017, 20:40 #2
кто нибудь что нибудь понял?
0
pav1uxa
1847 / 1700 / 644
Регистрация: 23.01.2014
Сообщений: 6,079
Завершенные тесты: 1
01.06.2017, 21:36 #3
0
MrGluck
Модератор
Эксперт CЭксперт С++
7496 / 4611 / 694
Регистрация: 29.11.2010
Сообщений: 12,621
02.06.2017, 00:46 #4
Цитата Сообщение от hoggy Посмотреть сообщение
кто нибудь что нибудь понял?
Да.
Цитата Сообщение от Auren Посмотреть сообщение
Извращалась уже над кодом как фантазии хватило
Цитата Сообщение от Auren Посмотреть сообщение
просто не понимаю картину в целом
Auren, вы в функции, которая должна менять значение переменной, поставьте в качестве параметра ссылку (на крайняк указатель).
Цитата Сообщение от Auren Посмотреть сообщение
&key_move[16]
Что вы этим хотели сказать? Передать адрес элемента, который стоит за массивом? Или это была попытка передать массив по ссылке?
0
02.06.2017, 00:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.06.2017, 00:46
Привет! Вот еще темы с ответами:

Функции float average(int arrray[],int from,int to) - C++
Напишите код функции float average(int arrray,int from,int to). Возвращаемым значением функции должно быть среднее значение элементов...

После выполнения (завершения) функции test переменная умрет, а что будет с переменной в Result? - C++
class abc { public: int argc; char **argv; char **azColName; }; std::list<abc> Result;

Почему переменная "d" не была удалена из стека после выхода из функции? - C++
Почему переменная "d" не была удалена из стека после выхода из функции? #include"stdafx.h" #include"iostream" using namespace std; ...

Переменная в структуре типа int - C++
Всем привет. Мне нужно, что бы переменная grand была типа int. Но так у меня не получается. Как правильно написать? struct data { ...


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

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

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