2013-01-19 41 views
1

我创建了简单的NSObject类来获取一些值。当我运行并构建应用程序时,我的应用程序没有出现任何错误。我尝试了很多时间来运行程序。我是目标c的初学者。它不是调用NSObject类

代码::

#import "FibonachiNo.h" 

@implementation FibonachiNo 

- (NSArray *) fibonacci:(NSInteger) n { 

    NSMutableArray *fib = [NSMutableArray array]; 

    int a = 0; 
    int b = 1; 
    int sum; 
    int i; 

    for (i=0; i<=n; i++) 
    { 
     [fib addObject:[NSNumber numberWithInt:a]]; 
     sum = a + b; 
     a = b; 
     b = sum; 
    } 

    return (NSArray *) fib; 
} 

- (NSInteger) factorial:(NSInteger) n { 
    if (n <= 1) 
     return 1; 
    else 
     return n * [self factorial:(n-1)]; 
} 

@end 

我的应用程序头类

#import <UIKit/UIKit.h> 
#import "FibonachiNo.h" 
@interface ViewController : UIViewController 
@property FibonachiNo *myFibonachi; 
@end 

调用方法NSObject类::

NSLog(@"fibonacci for 10 = %@", [myFibonachi fibonacci:10]); 
    NSLog(@"10! = %d",[myFibonachi factorial:10]); 

这是任何错误在此调用的方法?

回答

0

第一页头以下的初始化数组

#import "FibonachiNo.h" 

@implementation FibonachiNo 

- (NSArray *) fibonacci:(NSInteger) n { 

    NSMutableArray *fib = [NSMutableArray alloc]init]; 

    int a = 0; 
    int b = 1; 
    int sum; 
    int i; 

    for (i=0; i<=n; i++) 
    { 
     [fib addObject:[NSNumber numberWithInt:a]]; 
     sum = a + b; 
     a = b; 
     b = sum; 
    } 

    return fib; 
} 

- (NSInteger) factorial:(NSInteger) n { 
    if (n <= 1) 
     return 1; 
    else 
     return n * [self factorial:(n-1)]; 
} 

@end 

调用方法NSObject类::

ViewDidLoad使用。

FibonachiNo *myFibonachi=[[FibonachiNo alloc]init]; 
    NSLog(@"fibonacci for 10 = %@", [myFibonachi fibonacci:10]); 
    NSLog(@"10! = %d",[myFibonachi factorial:10]); 

如果你仍然面临任何问题,那么在这里显示你的NSLog输出。

+0

现在它运行正常。我有另一个问题。我在静态类库中创建了这个类。并且我在Mach-O Type中更改为Static Library,并将abc.a和abc.h文件添加到我的新应用程序中。然后显示波纹错误检查相关性 应用程序目标的'staticlib'的MACH_O_TYPE值无效。: – Himesh

+0

使用TextEdit打开YourProjectName.xcodeproj文件夹中的project.pbxproj文件,搜索productType并将其值从“com.apple.product动态“到”com.apple.product-static“ –

+0

也可以试试这个答案:http://stackoverflow.com/questions/10255044/xcode4-create-static-library-from-existing-project –

0

尝试使用

@synthesize * myFibonachi;

在您的ViewController.m文件下面@implementation

相关问题