2016-03-26 4 views
0

Как я могу создать объект в своем классе?Как передать объект в свой класс?

Таким образом, вместо того, чтобы писать это:

switch object { 
    case is ClassA: 
     return object as! ClassA 

    case is ClassB: 
     return object as! ClassB 
    } 

Ищу сокращенном виде, как:

return object as! object.class // which does not work 
+1

Каков тип возврата вашей функции? – dasblinkenlight

+0

Функция возвращает пользовательский UITableViewCell. Это функция tableView (cellForRowAtIndexPath ...). На самом деле это пахнет плохим дизайном кода, поэтому, чтобы очистить: в представлении таблицы используется массив и он должен передать его в пользовательские классы UITableViewCell. – Manuel

+1

Если все объекты являются подклассами UITableViewCell, вы можете использовать 'AnyObject' для' UITableViewCell', независимо от фактического типа. – dasblinkenlight

ответ

2

Функция возвращает пользовательские UITableViewCell. [...] Табличный использует массив <AnyObject> и должно привести его к обычаю UITableViewCell классов

Поскольку все объекты пользовательских UITableViewCell подклассов, вы можете бросить AnyObject к UITableViewCell, независимо от фактического типа. Этого должно быть достаточно, потому что UITable не нужно знать о типе за пределами базового типа UITableViewCell.

Смежные вопросы