Russian Qt Forum

Программирование => С/C++ => Тема начата: OKTA от Июнь 27, 2014, 17:54



Название: Неиспользуемая переменная
Отправлено: OKTA от Июнь 27, 2014, 17:54
Товарищи, есть массив чаров, который в программе не используется, но нужен для внешних программ, который работают с исполняемым файлом программы.
Так вот в дебаге, все ок, эта последовательность есть, а в релизе компилятор ее удаляет, как неиспользуемую.. Как это можно запретить?


Название: Re: Неиспользуемая переменная
Отправлено: Old от Июнь 27, 2014, 18:00
Так попользуйтесь этим массивом в программе. :)
Например, сложите несколько чаров из него. :)


Название: Re: Неиспользуемая переменная
Отправлено: OKTA от Июнь 27, 2014, 18:01
Я надеюсь, что есть более конструктивный вариант, но никак не могу найти  ;D

Этаж зараза оптимизирует на столько мощно, что если я буду использовать, например, только первый байт, то все остальные она все равно срежет  ;D

А если просто создать QByteArray из этого массив, то все ок. Несмотря на то, что эррэй этот тоже неиспользуеся  ;D


Название: Re: Неиспользуемая переменная
Отправлено: Old от Июнь 27, 2014, 18:17
Уверен, что у каждого компилятора есть pragma или __attribute__ для этого, но скорее всего, это будет не переносимо между компиляторами.

Почему бы эти данные не дописать в конец исполняемого файла?


Название: Re: Неиспользуемая переменная
Отправлено: OKTA от Июнь 27, 2014, 19:15
В конец как-то не красиво)))
QByteArray лишний картину не испортит, так что все ок)


Название: Re: Неиспользуемая переменная
Отправлено: Old от Июнь 27, 2014, 19:43
В конец как-то не красиво)))
Да. Ну не знаю. По мне так красивей в конец, чем в сегмент данных, так он и в память загружаться не будут.


Название: Re: Неиспользуемая переменная
Отправлено: Hellraiser от Июнь 27, 2014, 19:53
А что если для этого массива указать volatile?


Название: Re: Неиспользуемая переменная
Отправлено: _Bers от Июнь 27, 2014, 19:57
volatile


Название: Re: Неиспользуемая переменная
Отправлено: OKTA от Июнь 27, 2014, 20:11
не помогает  ;D