Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/2: Рейтинг темы: голосов - 2, средняя оценка - 4.50
172 / 24 / 4
Регистрация: 18.01.2011
Сообщений: 359
1

Теоретический вопрос.

05.03.2011, 11:25. Просмотров 478. Ответов 3
Метки нет (Все метки)


допустим у меня есть функция
C++
1
2
3
4
5
6
7
Func(short X, short Y)
{
short Rez=0;
 
Rez = X*Y;
 
}
Вопрос, правильнее ли переменную отображать в функции, тем более что ф-я может запускаться
несколько раз в теч. работы программы. Не правильнее было бы написать так:
C++
1
2
3
4
5
6
7
8
9
short Rez=0;
 
Func(short X, short Y)
{
 
 
Rez = X*Y;
 
}
Добавлено через 1 минуту
Я так понимаю, что в 1м случае переменная создается столько раз, сколько запускается функция, а это тратит память процессора. Но я не уверен в своих дагадках...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2011, 11:25
Ответы с готовыми решениями:

Теоретический вопрос
Является ли правильной константа: "false" ? Если да, то какого она типа?

теоретический вопрос
есть таблица с новостями и есть таблица с фотографиями как лучше сделать так чтоб к каждой новости...

Теоретический вопрос
Прошу прощения, вероятно разделом ошибся. Дали мне вопросы для самостоятельного изучения. Через...

Теоретический вопрос
Доброго времени суток составил список вопросов не очень понятных объясните пожалуйста кто знает 1....

3
91 / 24 / 2
Регистрация: 18.02.2011
Сообщений: 59
05.03.2011, 12:21 2
C++
1
2
3
4
5
Func(short X, short Y)
{
short Rez=0;
Rez = X*Y;
}
лучше обявлять переменную каждый раз в функции, потому что память выделяется под нее только тогда когда вызывается функция.


C++
1
2
3
4
5
short Rez=0;
Func(short X, short Y)
{
Rez = X*Y;
}
в этом случае переменная будет создана глобально и будет висеть в памяти все время.

но если вам нужно возвратить значения проиведения из функции то лучше не обявлять переменных вообще, а написать так:

C++
1
2
3
4
Func (short x, short y)
{
    return x*y;
}
1
172 / 24 / 4
Регистрация: 18.01.2011
Сообщений: 359
05.03.2011, 12:38  [ТС] 3
Ооо, большое спасибо за ответ. Теперь все стало понятно. Значит я все таки ошибался в своих предположениях))
0
1113 / 784 / 100
Регистрация: 01.02.2011
Сообщений: 1,847
Записей в блоге: 1
05.03.2011, 15:04 4
Во втором случае время выполнения функции будет в 2-2.5 раза больше, чем в первом случае.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2011, 15:04

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Чисто теоретический вопрос
А как разогнать контроллер? Хотя бы до частоты, означенной максимальной в даташите? Например, у...

Теоретический вопрос по быстродействию
Теоретический вопрос, по быстродействию, когда пишешь запрос на SQL результаты которого...

Скорее теоретический вопрос
Здравствуйте! я написала программу,которая работает с длинууующими числами. но важна не только...

Шаблоны. Теоретический вопрос.
Приветствую всех! Суть вопроса в следующем: известно, что для шаблонного класса невозможно...


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

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

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