Перейти к содержанию
    

Почему для GCC следующий код в полном порядке?

Хрен редьки не слаще - при хреново написанных исходниках так или иначе придется лезть в эти самые исходники и править.

Гораздо хуже, когда костыли уже настолько расхожены, что их наличие даже не заметно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

34 minutes ago, firstvald said:

вот, ни в коем случае, в сишных не надо.

не использую си, давным давно пишу на плюсах  и нет ни одной глобальной переменной даже в больших проектах, но это к слову ))

как раз проще всего переносить тем модули, у которых все объекты локальные или с припиской static

глобальные переменные и тем более структуры и тем более раскиданные "по разным щелям" кода  - вот это как раз и есть типичный костыль, для борьбы с которым вы придумали еще один, причем по настоящему чудовищный ))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

25 minutes ago, firstvald said:

ребят, внимательно читайте, что было написано и обдумайте

Читаем:

40 minutes ago, firstvald said:

декларация и объявление получаются тогда в разных файлах

ой

 

41 minutes ago, firstvald said:

попробуйте как попереносить кусок кода без ошибок копированием из файла в файл

Вот оно что. Повторное использование - это не про копирование из файла в файл. Это про грамотное построение программных интерфейсов, позволяющее переносить нужное целиком, а не через CCCV и 100500 правок получившейся кучи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/29/2023 at 12:32 PM, Forger said:

не использую си, давным давно пишу на плюсах  и нет ни одной глобальной переменной даже в больших проектах

вы повторяете это наверно в каждом своём сообщении но не понятно как это связано. Правильно написать можно разными способами, некоторые более подвержены случайным ошибкам другие менее  - для проверки  есть средства для анализа кода как встроенные так и внешние, но если не получалось на С то и на С++ ничего не поменяется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

41 minutes ago, sasamy said:

но не понятно как это связано.

связано напрямую, ибо нет глобальных переменных, нет нужды плодить такие костыли для доступа к ним

странно, что для кого то эта связь не очевидна

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/29/2023 at 1:50 PM, Forger said:

связано напрямую, ибо нет глобальных переменных, нет нужды плодить такие костыли для доступа к ним

так есть другие неочевидные места где вы можете налажать и 100% лажаете, кстати с чего вы взяли что глобальная переменная это обязательно ошибка

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 minutes ago, sasamy said:

так есть другие неочевидные места где вы можете налажать и 100% лажаете,

вы подглядываете за моей работой, раз демонстрируете такие самоуверенные заявления?

 

4 minutes ago, sasamy said:

кстати с чего вы взяли что глобальная переменная это обязательно ошибка

а с чего вы взяли что я такое заявлял?? покажите цитату 

потенциальное место для расстановки костылей - да, лично с таким сталкивался в своих проектах, выше костыли коллеги - это еще цветочки

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/29/2023 at 1:59 PM, Forger said:

вы подглядываете за моей работой?

люди всегда делают ошибки и это факт

 

On 11/29/2023 at 1:59 PM, Forger said:

а с чего вы взяли что я такое заявлял? покажите цитату

но вы так кичитесь что у вас нет глобальных переменных в С++ не зря наверно ? или просто не знали что и в С можно так

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 minutes ago, sasamy said:

люди всегда делают ошибки и это факт

в моих проектах где нет глобальных объектов нет проблем, связанным с их использованием, этого достаточно, чтобы их и далее не использовать

надеюсь, эта прямая связь понятна?

 

7 minutes ago, sasamy said:

или просто не знали что и в С можно так

на С можно и не такое учудить, на то он и С )

вы этого не знали? тогда у в вас все еще впереди ))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/29/2023 at 2:14 PM, Forger said:

в моих проектах где нет глобальных объектов нет проблем, связанным с их использованием, этого достаточно, чтобы их и далее не использовать

надеюсь, эта прямая связь понятна?

не понятно зачем надо было переходить с С на С++, видимо на С не получалось. На С++ вы делаете ошибок не меньше если полагаетесь только на свой "здравый смысл", это понятно ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

24 minutes ago, sasamy said:

не понятно зачем надо было переходить с С на С++

браво, в одном сообщении попытаться раздуть холивар да и еще нахамить на ровном месте ((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 11/29/2023 at 2:52 PM, Forger said:

в одном сообщении попытаться раздуть холивар да и еще нахамить на ровном месте

просто спросил что значит "слава КПСС" а вы обиделись, я ведь тоже делаю ошибки 🙂

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 часа назад, sasamy сказал:

что значит "слава КПСС"

"Слава" пишется с заглавной буквы, все-таки имя собственное 🤣

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 hours ago, Forger said:

не использую си, давным давно пишу на плюсах  и нет ни одной глобальной переменной даже в больших проектах, но это к слову ))

как раз проще всего переносить тем модули, у которых все объекты локальные или с припиской static

глобальные переменные и тем более структуры и тем более раскиданные "по разным щелям" кода  - вот это как раз и есть типичный костыль, для борьбы с которым вы придумали еще один, причем по настоящему чудовищный ))

мне сложно сказать про вообще. такой прием мне показали лет так десять назад профессиональные программеры. до этого мы пробовали выбрать схему написания проекта ,  которая бы снимала кучу проблем т н классического написания. проверяли некоторые варианты . из того, что я видел ,  остановился на этом. я очень подробно расписал почему "классически" делать мягко говоря не стоит. каждый волен писать, как ему удобно, но для своих проектов у меня некоторые правила , проверенные временем. вполне возможно, что у вас можно обойтись без глобальных переменных ,  но в измерительном эмбедде это не так. кто спорит, что локальники просто переносить, НО! только если в сишник не засованы декларации и определения.  мне понравилось определение "по разным щелям" - точнейшее определение чудовищной модели с определением и декларированием в сишике и потом костылянии везде, где встретятся эти переменные. это кошмар. и его упорно тиражируют. не вдумываясь в эту глупость. это стиль программистов- поскакунчиков. пороект или загубливается или даже доводится до рабочего состояния и т н программер переходит в следующую контору сеять . на его место берется чел с "умением разбираться в чужом коде". и бой продолжается.  сейчас приходится портировать проект написанный в таком стиле группой товарищей,  а там более 90 файлов и как раз в сишники зафигачили определения. чего теперь с этим делать, непонятно.

 

про плюсы от эмбеддеров нижнего уровня слышу .... в смысле не нужен с++. но было бы удобно в некоторых случаях (если проект сложный и его писать долго, плюсы явно дадут облегчение). кстати. ардуина на плюсах. очень удобно.

 

не очень нравится гнилой стиль дискуссии. такой в стиле футбольных фанатов. правильнее читать внимательно. есть люди со странным воспитанием, считающие что они все видели и все знают. есть глупцы, кидающие пару умных фраз, типа я тут такой гений (Ландау такие). 

профессиональное сообщество предназначено для обмена шишками и знаниями. и, порой, в редчайших случаях, для нахождения решений, реально решающих проблему. 

 

про то чему учат и учили и какие заблуждения вколотили народу может в болталке начать тему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 minutes ago, firstvald said:

а там более 90 файлов и как раз в сишники зафигачили определения. чего теперь с этим делать непонятно.

а ничего не делать, оставить как есть, я серьезно!

просто ставлю свои простые обертки вокруг чужого и стороннего кода, т.н. wrappers, по сути это некий интерфейс между чужим кодом (порой откровенным го%кодом) и моими проектами, 

позволяет и "не измазаться" в чужом коде и если что его обновить на более "свежее" г

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...