В одном из ранее знакомом мне ЯП есть команда "shared", которая позволяет включить переменную в текущую область видимости (процедура например) из main потока программы. Есть ли аналог в CPP? Или надо использовать указатели (*)?
code:;comment
;здесь типо main
my_integer.i = 2011 ;обьявили int в основном месте программы
Procedure any()
;my_integer здесь не известен (вне области видимости)
Shared my_integer ;теперь виден и актуален внутри этой процедуры, но не является глобальным и не передавался в процедуру аргументом
EndProcedure
any() ;вызов процедуры, объявленной выше
Это, если что PureBasic, можете найти online справку и прочесть описание shared, я к сожалению ссылку дать не могу.
Вот мне неоднократно говорили, что С\С++ ужасно сложные языки, и изучать их с нуля, это все равно что разбега убиться об стену.
Но глядя на уродский синтаксис подобных васиков, я ей богу начинаю сомневаться в адекватности тех, кто так говорил.
Неудивительно, что на подобном языке ничего серъезного написать невозможно.
Нет, нету такого в С++. Если переменная объявлена вне функции, она закономерно видна изо всех частей программы. Если переменная объявлена внутри функции, то она видна только внутри нее.
Мне как-раз такой синтаксис и нравится, как английский язык прям .
А вообще да, бывает, что не хватает "жесткости" в PB, например, объявление переменных может происходить сразу при их использовании, без int'ов и подобного.
А почему считаешь, что серьезного ничего не создать, это не понятно.
qpAHToMAS писал: А вообще да, бывает, что не хватает "жесткости" в PB, например, объявление переменных может происходить сразу при их использовании, без int'ов и подобного.
А как же Option Implicit?
То есть тьфу, Option Explicit.
Вопрос, например, планирую использовать числовую переменную в диапазоне 0-255 (или меньше, для хранения например количества HP игрока -- 0-100), но книги упорно учат использовать integer, а не более приближенный по размеру в данном случае тип -- byte.
Как быть?