Здравствуйте, гость ( Вход | Регистрация )
|
Ponchikus |
19.1.2016, 15:32
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 21 Регистрация: 25.6.2015 Пользователь №: 4411 Спасибо сказали: 0 раз(а) Репутация: 0
|
Доброго времени суток, уважаемые форумчане. Очень интересует следующий вопрос.
Почему в этом случае у переменной "string" и у переменной "str" один и тот же адрес ??? Спасибо! |
|
|
|
![]() |
|
ViGOur |
20.1.2016, 10:15
Сообщение
#2
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40
|
Ну смотри, если бы все это отрабатывало без оптимизации, то вызовы были бы примерно такие:
При оптимизации буду вызваны только Конструктор и Деструктор, что-то вроде:Но со своим выделением памяти и своим сборщиком мусораДля того, чтобы изучить как и что работает ты можешь создать обычный класс CClass например и сделать для него все то же самое поэкспериментировав с ключами оптимизации. |
|
|
|
Ponchikus QString объект из функции. 19.1.2016, 15:32
ViGOur Это оптимизация такая: Return value optimization
Е... 19.1.2016, 17:24
Ponchikus Цитата(ViGOur @ 19.1.2016, 17:24) Это опт... 19.1.2016, 18:45
lanz Цитатапринимает примерно следующий вид
Нет, RVO, о... 19.1.2016, 19:46
Ponchikus lanz, благодарю за пояснения, только всеравно не я... 19.1.2016, 21:34
Алексей1153 Ponchikus, ты выводишь адрес локальной переменной,... 20.1.2016, 8:03
Ponchikus ViGOur, спасибо, теперь более понятно. Попробовал ... 20.1.2016, 13:42![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 26.12.2025, 10:25 |