ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
62437 Топик полностью
zlogic (08.07.2006 07:20, просмотров: 1) ответил FDA на Вот пример
Действительно, компилятор выдал ошибку... Но... private void button1_Click(object sender, EventArgs e) { byte b; int c; c = b + 5; } на эту конструкцию компилятор сказал, что используется переменная b, которой ничего НЕ ПРИСВАИВАЛОСЬ. Речь не об инициализации и чистке памяти, о которых речь шла выше. В си-шарпе речь не о том, что надо делать вот так всегда: private void button1_Click(object sender, EventArgs e) { byte b = 0; int c; c = b + 5; } А о том, что, прежде чем использовать переменную, программист в неё должен поместить что-то осмысленное. Это просто умный анализ кода компилятором. Кода, который не имеет смысла. Об этом же свидетельствует отсутствие реакции компилятора си-шарпа на неинициализацию переменной "с". Хотя, с другой стороны, никто не мешает почистить память в другом месте кода, как это делается в СТАРТАПЕ в проектах кейла... Память обнулится, а си-шарп ругнётся, хотя объявленные переменные инициализированы нулями...