有没有办法得到以下结果:
NSObject *a = [[NSObject alloc] init];
[a class];
没有实例化?我希望将Class对象作为参数传递给函数,然后检查它。像这样:
- (void) pushControllerOfClass: (Class) aClass
{
if([aClass isSubclassOfClass: *what should I write here?*]) {
...
}
}
直觉上,我试着写
if([aClass isSubclassOfClass: UIViewController]) {
但它不起作用。感谢未来的回应。
更新: 这样的函数在 ObjectiveC 中被认为是坏的吗?我重构了 Nahavandipoor 的书iOS 5 Programming Cookbook中的代码。就像这样:
- (void) pushSecondController{
SecondViewController *secondController = [[SecondViewController alloc]
initWithNibName:nil
bundle:NULL];
[self.navigationController pushViewController:secondController animated:YES];
}
对我来说,这是一种不好的功能:它没有在应该参数化的时候进行参数化。