
Alexander
23.05.2018
12:42:07
и компилироваться несколько раз, соттв.

Max
23.05.2018
12:42:24
более того иногда содержимое хедера может меняться типа всяких boost.pp

Сиие
23.05.2018
12:42:30
У нас с вами какие-то разные знания о сборщиках

Google

Сиие
23.05.2018
12:43:49
Вы говорите о какой-то хуйне которая работать в принципе не может

Max
23.05.2018
12:44:41
ну а как по твоему работает препроцессор?
лет 30 уже работает если не больше

Сиие
23.05.2018
12:47:35
лет 30 уже работает если не больше
по вашей логики если я создам два три файла, в одном создам ГЛОБАЛЬНУЮ переменную "А", потом подключу этот файл в двух других файлах то у меня будет ДВЕ переменные "А"? для каждого из файлов?

Max
23.05.2018
12:56:22

Aidar
23.05.2018
12:57:09

Сиие
23.05.2018
12:57:18

Max
23.05.2018
12:57:39

Aidar
23.05.2018
12:57:55

Сиие
23.05.2018
12:58:00

Google

Aidar
23.05.2018
12:58:00
Будет две

Max
23.05.2018
12:58:19

Сиие
23.05.2018
12:58:42
static linkage?
static unsigned short attribute ((aligned (16))) app_spi_rx_buffer1[1];

Aidar
23.05.2018
12:58:43
Тоесть no-linkage

Сиие
23.05.2018
12:59:13

Max
23.05.2018
12:59:14
а как с linkage?

Aidar
23.05.2018
12:59:22
Ну не сольются они
inline extern сольются

Max
23.05.2018
13:00:10
ну вот да
получится две копии

Сиие
23.05.2018
13:00:33

Max
23.05.2018
13:00:47
а теперь если будет один хедер с определением аткой переменной и он будет инклюдится в два цппшника, будет две переменных?

Сиие
23.05.2018
13:00:48

Aidar
23.05.2018
13:00:59

Max
23.05.2018
13:01:11
я не про екстерн
просто статик

Сиие
23.05.2018
13:01:17

Aidar
23.05.2018
13:01:23
Уверен?
Это объявление с определением

Сиие
23.05.2018
13:01:35

Google

Сиие
23.05.2018
13:02:00

Aidar
23.05.2018
13:03:26
Ладно ты прав
Не шарю в синтаксисе

Сиие
23.05.2018
13:04:36
кортиночки порезали, так бы показал скрин

Aidar
23.05.2018
13:06:09
Стоп блджад о каком вы статике

Max
23.05.2018
13:06:27
ну вот срыв покровов какойто со статиками
все запутались
так что в итоге если будет один инклюд со статиком в разные цпп?

Aidar
23.05.2018
13:06:55
Internal linkage или static storage duration?
Первое 2 переменные
Второе зависит от того как объявлена функция

Сиие
23.05.2018
13:07:57

Сиие
23.05.2018
13:08:09

Aidar
23.05.2018
13:08:19
Да их три обычных блджад

Сиие
23.05.2018
13:08:35

Aidar
23.05.2018
13:08:42
Где
В классе?

Max
23.05.2018
13:08:57

Aidar
23.05.2018
13:09:09
Значит первое

Сиие
23.05.2018
13:09:12
просто в файле

Google

Aidar
23.05.2018
13:09:39

Max
23.05.2018
13:09:47

Aidar
23.05.2018
13:09:51
Ну будет 2 функции
Кажется чаты поменялись ролями
Тут обсуждают какую-то дичь а в том холивары за винапи

Max
23.05.2018
13:11:54

Stanislav
23.05.2018
13:12:54

Max
23.05.2018
13:18:54
дичь? а потом такое всплывет в проекте и будешь думать почему курсор между функциями прыгает или почему сделал в одном месте изменение в переменной, а в другом месте все по старому

Egor
23.05.2018
13:20:03
и часто приходится лепить статические переменные в хедерах?

Admin
ERROR: S client not available

Max
23.05.2018
13:21:28
я ваще не пишу глобальные переменные. но вот каждый раз встречаю энтерпрайзные проекты с такими вещами
нынешний проект где одни синглтоны
ранее не встерчал такого
до этого было что зависимости передавались через 100500 указателей по всему проекту (сырых да) и периодически оно падало тк указатель протухал
тут хотя быне падает
так что хочется знать все нюансы такого говнокода
разве это плохо?

Сиие
23.05.2018
13:25:42

Egor
23.05.2018
13:26:31
пример?

Google

Сиие
23.05.2018
13:27:01
пример?
static unsigned short attribute ((aligned (16))) app_spi_rx_buffer1[1];
пример?
зачем мне её делать не глобальной?

Egor
23.05.2018
13:27:54
ты мне скажи

Сиие
23.05.2018
13:28:59
ты мне скажи
нет смысла, как и нет смысла её пихать в классы, не надо всё притягивать в ООП когда это надо и не надо

Egor
23.05.2018
13:30:00
необходимость многих экзепляров чем обусловлена?

Сиие
23.05.2018
13:30:15

Egor
23.05.2018
13:30:20
этой переменной

Сиие
23.05.2018
13:30:47
он один на весь проэкт
и таскать его через ссылки и гетеры смысла нет

Egor
23.05.2018
13:32:34
ты точно не потерял нить разговора? по твоим словам у тебя статическая переменная объявлена в хедере, который подключается в несколько файлов - она не глобальная и у неё много копий

Сиие
23.05.2018
13:33:12

Constantine
23.05.2018
13:33:23

Сиие
23.05.2018
13:35:00
так, ещё раз разговор о статической глобальной переменной, вне класса, которая обьявлена в хедере, я правильно всё понял?

Egor
23.05.2018
13:35:24
она уже не будет глобальной, если статик

Сиие
23.05.2018
13:35:38
тогда она будет условно глобальной для всех членов класса, и будет в единственном екземпляре

Aidar
23.05.2018
13:37:48

Egor
23.05.2018
13:38:57

Сиие
23.05.2018
13:40:55

Max
23.05.2018
13:41:08
мне кажется вы запутались в static, они бывают разные
и что вообще обсуждают тут, lifetime или scope?