Re[3]: C# params keyword and null problem
От: Кодёнок  
Дата: 29.10.10 10:26
Оценка: +1
Здравствуйте, _FRED_, Вы писали:

_FR>Ответы специалистов, кстати, в первом же результате поиска


Косяк дизайна языка я считаю. Надо было потребовать писать params, если программист хочет передать все параметры одним массивом:

object[] x = new object[] { "fred", "he", "is", "not", "null" };

foo(params x) // ps: x (5 параметров-строк)
foo(x) // ps: object[] { x } (один параметр-массив)


Как в Python:

def foo(*ps):
    print(len(ps), len(ps[0]) if len(ps) > 0 else '*')

x = ["fred", "he", "is", "not", "null"]

foo(x, x, x) # 3 5
foo(x, x)    # 2 5
foo(x)       # 1 5
foo()        # 0 *

foo(*x) # 5 4
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.