реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Опция компилятора destroy static objects, IAR MSP430
k155la3
сообщение Apr 24 2015, 07:10
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



С/С++ Compiler
Language 1
C++ dialect
<destroy static objects> (чекбокс)

(?)
1. В описании IAR компилятор об этой опции сказано уж очень лаконично (в стилие IAR)
Подскажите, "для интеллектуала", как это влияет на жизнь статик-переменных.

2. Область видимости для static.
В многомодульном проекте статик-переменная, определенная в любом модуле
( например внути функции ), как я наивно полагал, должна ( sm.gif))) стать глобально-видимой в проекте.
те. на уровне линкера модули должны ее видеть. Но ...

Где почитать по (1) (2) ?



Go to the top of the page
 
+Quote Post
scifi
сообщение Apr 24 2015, 07:30
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(k155la3 @ Apr 24 2015, 10:10) *
<destroy static objects> (чекбокс)

Статические объекты следует уничтожать после выхода из main(). Понятно, что применительно к МК это довольно бессмысленно. Отсюда вывод, что эта фича специально для МК, чтобы не генерить лишний код (галка убрана).

Цитата(k155la3 @ Apr 24 2015, 10:10) *
В многомодульном проекте статик-переменная, определенная в любом модуле ( например внути функции ), как я наивно полагал, должна ( sm.gif))) стать глобально-видимой в проекте.
те. на уровне линкера модули должны ее видеть. Но ...

С какого перепуга?

Цитата(k155la3 @ Apr 24 2015, 10:10) *
Где почитать по (1) (2) ?

В учебнике про язык программирования C++.
Go to the top of the page
 
+Quote Post
k155la3
сообщение Apr 24 2015, 13:54
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(scifi @ Apr 24 2015, 10:30) *
Статические объекты следует уничтожать после выхода из main(). Понятно, что применительно к МК это довольно бессмысленно. Отсюда вывод, что эта фича специально для МК, чтобы не генерить лишний код (галка убрана).

С какого перепуга?

В учебнике про язык программирования C++.


Есть необходимость-желание, к статик-переменной объявленной внутри ф-ии, обращаться из другого модуля.
(не прихоти ради, а результата для) из-за оптимизации. Это можно или это низзя ?
Передавать указатель - это понятно. Можно ли это увязать на уровне линкера.







Go to the top of the page
 
+Quote Post
scifi
сообщение Apr 24 2015, 14:45
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(k155la3 @ Apr 24 2015, 16:54) *
Есть необходимость-желание, к статик-переменной объявленной внутри ф-ии, обращаться из другого модуля.
(не прихоти ради, а результата для) из-за оптимизации. Это можно или это низзя ?

Можно! Для этого статическую переменную нужно переделать в глобальную.
Но сам посыл оч. сомнительный. Не знаю, что там можно таким способом наоптимизировать.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 18:50
Рейтинг@Mail.ru


Страница сгенерированна за 0.01388 секунд с 7
ELECTRONIX ©2004-2016