Здравствуйте, Erop, Вы писали:
E>Здравствуйте, c-smile, Вы писали:
CS>>Пока пробую выкрутиться без применения RAII ...
E>IMHO, в большинстве случаев можно забить на экономию одной ссылки.
В большинстве случаев — да. В данном случае столкнулся с тем что лучше не забивать.
Здравствуйте, c-smile, Вы писали:
CS>В большинстве случаев — да. В данном случае столкнулся с тем что лучше не забивать.
А если таки помочь компиллеру?
Ну, типа сделать так, что из контекста достаётся нужная ссылка. В начале функции создаётся контекст и вся работа по ссылке идёт в функции через него, а функцию объявить какой-нибудь fast_call, чтобы аргументы через регистры шли?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, Centaur, Вы писали:
C>Без дополнительной информации я бы предположил, что копировать контекст нельзя — либо принципиально невозможно (поток ввода-вывода, объект со сложным поведением), либо слишком дорого (огромный массив данных).
Так его никто и не будет копировать, вообще-то...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, Centaur, Вы писали:
CS>>Каждая переменная типа context содержит ссылку (указатель de facto) на CTX увеличивая тем самым размер стека функции. CS>>Можно ли как-нибудь избавитсься от этой context::ctx переменной?
C>Преждевременная оптимизация — sqrt(∀evil). Оптимизирующий компилятор, скорее всего, выоптимизирует эту ссылку.
Я счастлив что ты знаешь эту хохму про premature optimization.
Не, ну шо за люди ... Я что спросил про "стоит ли оно оптимизации или нет"?
Задал же конкретный вопрос...
Здравствуйте, Кодт, Вы писали:
К>Здравствуйте, igna, Вы писали:
C>>>Преждевременная оптимизация — sqrt(∀evil). I>>А почему корень квадратный, это что, дальнейшее развитие тезиса?
К>А это и есть преждевременная оптимизация. Человек погорячился, конкретизировал степень, вызвал вопросы и нарекания.