powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / строки на стеке
11 сообщений из 61, страница 3 из 3
строки на стеке
    #39786031
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_и значение var/out параметров не определены?

как минимум частично они определены: если они managed-типов, то мусора в них быть не может вообще никогда, даже при исключениях
...
Рейтинг: 0 / 0
строки на стеке
    #39786032
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_Vasilisk_, в си-шарпе вы не сможете откомпилировать программу, пока не инициализируете out параметр.
...
Рейтинг: 0 / 0
строки на стеке
    #39786033
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ziv-2014out минимум надо инициализировать.

кроме того, ты вроде спорил не про надо/не надо а про то, где это делать, внутри функции или снаружи
...
Рейтинг: 0 / 0
строки на стеке
    #39786035
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ziv-2014_Vasilisk_, в си-шарпе вы не сможете откомпилировать программу, пока не инициализируете out параметр.

с неинициализированной локальной переменнйо можно скомпилировать?

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
int i;

switch(j) {
  case 0: i = 1; break;
  case 1: i = 2; break;
  case 2: i = 3; break;
  case 3: i = 4; break;
};

i = i + 1;



вот такого рода код в шарпе по умолчанию скомпилируется или нафиг пошлёт ?
...
Рейтинг: 0 / 0
строки на стеке
    #39786044
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ziv-2014В Delphi да не всегда соблюдается - но как это считать, багом или фичей вот вопрос?


Судя по всему - обратной совместимостью.
Частный случай использования неинициализированной переменной.
Которая в Turbo Pascal не запрещалась.
И в Delphi по умолчанию - Warning а не Error (хотя я, затрахавшись ловить ошибки, перевёл в Error).

В XE2 детектор часто даёт false positive, туповат он, приходится делать холостое присваивание.

А в новых версиях гвоорят вообще пц - 21830333
...
Рейтинг: 0 / 0
строки на стеке
    #39786046
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arioch,
Ошибка использование локальной переменной, которой не присвоено значение
...
Рейтинг: 0 / 0
строки на стеке
    #39786055
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ariochziv-2014В Delphi да не всегда соблюдается - но как это считать, багом или фичей вот вопрос?


Судя по всему - обратной совместимостью.
21830333
Вот и я решил, что это фича, но в контексте interface это конечно ошибка. Поэтому всегда стараюсь использовать var и инициализацию.
...
Рейтинг: 0 / 0
строки на стеке
    #39786120
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ziv-2014Ошибка использование локальной переменной, которой не присвоено значение

Это хорошо.

А однократно-присваиваемые переменный в C# есть?

т.е. вместо assignment - binding
...
Рейтинг: 0 / 0
строки на стеке
    #39786121
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ziv-2014но в контексте interface это конечно ошибка

я предпочитаю в интерфейсе выражать, что я хочу получить, даже если компилятор это не enforsing

так что я за out :-)
...
Рейтинг: 0 / 0
строки на стеке
    #39786126
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AriochА однократно-присваиваемые переменный в C# есть?

Не понял тебя? Есть переменные read only. Создал указатель, поменять уже нельзя.
...
Рейтинг: 0 / 0
строки на стеке
    #39786139
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://stackoverflow.com/questions/443687/why-does-c-sharp-disallow-readonly-local-variables

disallow....


https://www.c-sharpcorner.com/UploadFile/0c1bb2/read-only-and-constant-in-C-Sharp/
Readonly can be declared only at class level not inside the method.
Readonly can not be declared using static keyword because they are by default static.

Пичалько. Вещь хорошая, но что-то её слишком сильно урезали...
...
Рейтинг: 0 / 0
11 сообщений из 61, страница 3 из 3
Форумы / Delphi [игнор отключен] [закрыт для гостей] / строки на стеке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]