小编qst*_*tar的帖子

Objective-C 101(保留vs赋值)NSString

一个101问题

假设我正在制作汽车数据库,每个汽车对象定义为:

#import <UIKit/UIKit.h>

@interface Car:NSObject{
    NSString *name;
}

@property(nonatomic, retain) NSString *name;
Run Code Online (Sandbox Code Playgroud)

为什么@property(nonatomic, retain) NSString *name;@property(nonatomic, assign) NSString *name;呢?

据我所知,assign这不会增加引用计数器retain.但是为什么要使用retain,因为它是对象的name成员todo,它的范围就是它自己.

没有其他外部功能也会修改它.

iphone objective-c nsstring retain ios

54
推荐指数
6
解决办法
7万
查看次数

计算机和防火墙上的端口及其用途-101问题

好的,计算机具有用于应用程序的端口,用于将数据从外界传输到防火墙,然后再传输到计算机。

那么,Firefox和Internet Explorer如何在同一台计算机上使用同一端口?

为什么我们不能使用端口80将所有位置的所有流量传递到计算机。

那么为什么我们需要特定的端口?

firewall

5
推荐指数
2
解决办法
5041
查看次数

什么是回调?

这是一个功能吗?
它是从源头调用的函数吗?
或者,它是从目的地返回的功能吗?
或者,它只是在目的地执行一个功能?
或者,它是从传递给目标的函数返回的值吗?

definition callback

4
推荐指数
2
解决办法
1155
查看次数

Objective-C类中的指针,基元和属性

我真的需要一些澄清 - 我有几个问题,我现在都搞砸了.

这是一个简单的类接口:

#import <UIKit/UIKit.h>

@interface Car : NSObject{
    NSInteger carID;
    NSString *carName;
}

@property (nonatomic, assign) NSInteger carID;
@property (nonatomic, copy) NSString * carName;
@end
Run Code Online (Sandbox Code Playgroud)
  1. 为什么carID不被声明为指针?
  2. 为什么使用"assign" carID而不是"copy"?
  3. 为什么甚至首先将类成员声明为指针?(在我的主程序中,我的Car对象将用作指针.)

pointers properties objective-c primitive-types

3
推荐指数
1
解决办法
4001
查看次数

NSString(指针/非指针)赋值或保留

我有四个同一类的变种.

指针,非指针,分配与复制的混合.

使用每个案例有什么含义?

1)

@interface fruit:NSObject{
NSString apple;
}
@property(nonatomic, retain);
@end

2)

@interface fruit:NSObject{
NSString apple;
}
@property(nonatomic, assign);
@end

3)

@interface fruit:NSObject{
NSString *apple;
}
@property(nonatomic, retain);
@end

4)

@interface fruit:NSObject{
NSString *apple;
}
@property(nonatomic, assign);
@end

objective-c

2
推荐指数
1
解决办法
2393
查看次数