Быстрый вопрос, требующий понимания от этого сообщества: Какой из них предпочтительнее?
Вариант ①
// How many spaces are there in the beginning of string? (and remove them)
int spaces = text.Length;
text = text.TrimStart(' ');
spaces -= text.Length;
- Преимущество: Назначение в отдельной строке, поэтому побочный эффект очевиден
- Недостаток: Первая строка сама по себе выглядит бессмысленной; вы должны заметить третью строчку, чтобы понять это
Вариант ②
// How many spaces are there in the beginning of string? (and remove them)
int spaces = text.Length - (text = text.TrimStart(' ')).Length;
- Преимущество: Оператор имеет смысл с точки зрения выполняемых вычислений
- Недостаток: Присвоение вроде бы скрыто внутри выражения; побочный эффект можно не заметить
задан SolutionYogi 17 February 2011 в 17:42
поделиться