Можете прямо здесь создать опрос(или вынести в отдельный топик) и сразу узнаете мнение. На GitHub и так Issue переполнены, разработчики просили быть аккуратнее…
Вас понял.
А где можно прочитать, насколько часто это использовалось на практике?
В PascalABC.NET надо, извините, неоднократно раком стать, чтобы последовательность ту же суметь передать по значению. Как вообще передать по значению то, что не хранится?
А кто просил Вас передавать по значению то, что не хранится?
Ну Вы же хотите out для последовательностей? Или нет?
Хочу, но:
Ключевое out инициирует передачу аргументов по ссылке. Оно схоже с ключевым словом ref за исключением того, что при использовании ref перед передачей переменную необходимо инициализировать.
Я же вижу, что по ссылке (выше ее тоже оставлял) никто не тыкал.
Приплыли… Отдельное ключевое слово для работы с редким типом.
Спасибо, я это давно знаю)))) Я пытаюсь все же понять, зачем это надо.
Я уже ответил Вам, что в Паскале переменные автоинициализируются, а передача nil через Var не запрещена.
Если Вы знаете, то тогда это зачем:
?
Я Вам страшную пионерскую тайну открою: ссылку необязательно тыкать. Есть такая штука ,называется меню правой кнопки мыши. И оттуда можно делать переход в новое окно без кликов))
А, действительно страшная тайна. Тогда приношу свои извинения.
Что мешает сделать ключевое слово, которое заставляет назначить значение переменной, переданной по ссылке, внутри подпрограммы? Просто заставляет, больше ничего. Человек есть человек, он может что-то забыть. А если ему напомнит что-то присвоить переменной компилятор - это же хорошо.
Повторяю третий(!) раз: в Паскале автоинициализируются простые типы(Int32, Byte и подобные). Им по умолчанию присвоен 0. Если Вам так хочется, можете сделать проверку параметра на nil и выдавать исключение. А вообще,
Дело было вечером - делать было нечего
.
Повторюсь, что можно сделать ключевое слово, которое заставляет передавать переменную по ссылке (как var), а также заставляет переприсвоить ей какое-то значение до выхода из тела подпрограммы.
Нет. Только на половину. var не:
заставляет переприсвоить ей какое-то значение до выхода из тела подпрограммы