如何通过目标c中的方法将变量一个类传递给其他类

时间:2011-11-30 20:56:34

标签: objective-c

让我们考虑一下代码

one.h
#import "historyViewController.h"

int isItfsa;


one.m
     -(IBAction)homeHistory:(id)sender{
            isItfsa = 0;
            historyViewController *hisVController = [[historyViewController alloc]initWithNibName:@"historyViewController" bundle:nil];
            [self presentModalViewController:hisVController animated:YES];
            [hisVController release];
        }

但是当我收到它时不打印// 0

但是在二等二.m

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    NSLog(@"isItfsa=%@",isItfsa); //isItfsa=null
}

它打印为null,但为什么?以及如何通过方法将值从一个类传递到另一个类。

2 个答案:

答案 0 :(得分:2)

isItfsa由您的代码定义为int,它不是对象。您的NSLog已格式化为使用%@打印对象。如果int值为零,则尝试将其作为对象打印将产生(null)。

您的打印声明应为NSLog(@"isItfsa=%d",isItfsa);

答案 1 :(得分:1)

Null与零相同。它写“null”因为你没有告诉它写一个整数,你告诉它写一个对象。

您的代码:

NSLog(@"isItfsa=%@",isItfsa)(将isItfsa写为对象)

应该是:

NSLog(@"isItfsa=%i",isItfsa)(将isItfsa写为整数)