oc-32-@property示例
Goods.h
#import <Foundation/Foundation.h>
typedef struct{
int year;
int month;
int day;
} MyDate; typedef enum{
GenderFemal,
Gendermal
} Gender; @interface Goods : NSObject
//已经做了set的内存管理
@property(nonatomic,assign)float price; // 单价 @property(nonatomic,assign)Gender gender; // 性别 @property(nonatomic,assign)float weight; // 重量 @property(nonatomic,copy)NSString *showImage; // 图片 @property(nonatomic,assign)MyDate produceDate; // 生产日期 @property(nonatomic,assign)MyDate expireDaer; // 过期日期 // 卖家所卖的商品
@property(nonatomic,retain)Goods *goods; @end
Good.m
#import "Goods.h" @implementation Goods
- (void)dealloc
{
NSLog(@"商品被释放");
[super dealloc];
}
@end
main.m
#import <Foundation/Foundation.h>
#import "Goods.h"
#import "Buyer.h"
#import "Seller.h" int main(int argc, const char * argv[]) {
@autoreleasepool {
// 创建商品
Goods *g = [[Goods alloc] init];
// 给商品属性赋值
g.price = ;
g.weight = ;
g.showImage = @"/Users/apple/Desktop/1.png";
g.produceDate = (MyDate){,,};
g.expireDaer = (MyDate){,,}; // 买家
Buyer *buyer = [[Buyer alloc] init];
buyer.name = @"小明";
buyer.gender = GenderFemal;
buyer.age = ;
buyer.height = ; // 卖家
Seller *seller = [[Seller alloc] init];
seller.name = @"张三丰";
seller.age = ;
seller.height = ;
seller.goods = g; // 释放对象
[g release];
[buyer release];
[seller release]; }
return ;
}
oc-32-@property示例的更多相关文章
- OC语言@property @synthesize和id
OC语言@property @synthesize和id 一.@property @synthesize关键字 注意:这两个关键字是编译器特性,让xcode可以自动生成getter和setter的声明 ...
- OC中@property属性关键字的使用(assign/weak/strong/copy)
OC中@property属性关键字的使用(assign/weak/strong/copy) 一.assign 用于 ‘基本数据类型’.‘枚举’.‘结构体’ 等非OC对象类型 eg:int.bool等 ...
- 李洪强iOS开发之OC语言@property @synthesize和id
OC语言@property @synthesize和id 一.@property @synthesize关键字 注意:这两个关键字是编译器特性,让xcode可以自动生成getter和setter的声明 ...
- OC基础--Property
编译器指令: 用来告诉编译器要做什么 @property: @property是编译器的指令 告诉编译器在@interface中自动生成setter和getter的声明 @synthesize: @s ...
- [OC笔记]@property之个人理解,大神轻拍
/** * 一个简单的对象 * * @author suzhen * */ public class SimpleObjcet { /** * 声明一个age字段 */ private Object ...
- OC的@property 和 @synthesize id
学习java的JDBC,成员变量的setter和getter,eclipse都能帮我们自动生成:当然xcode这款编译器也很强大,也能自动生成: 1:@property @property是写在类的声 ...
- OC中property方法的使用
我们直入主题,关于property方法,我们先来了解一下相关的知识,首先是成员变量,实例变量,属性变量. 我们定义一个类来看一下 @interface Person :NSObject{ NSInte ...
- OC中property的有关属性
property的有关属性: (1)readwrite是可读可写特征:需要生成getter方法和setter方法: (2)readonly是只读特性只会生成getter方法不会生成setter方法: ...
- OC之property和自动释放池
property实例 property参数 自动释放池 一.property实例 1.前边的例子我们看到,我们在一个类中如果用到另外一个类的实例作为自己的成员变量时,通常需要在setter方法中,先r ...
- 「OC」@property @synthesize和id
一.@property @synthesize关键字 这两个关键字是编译器特性,让Xcode可以自动生成getter和setter. (一)@property 关键字 @property 关键字可以自 ...
随机推荐
- mysql 用户权限
创建用户 CREATE USER username IDENTIFIED BY 'password';
- PHP 碎片
1. $_SERVER['REMOTE_ADDR'] cannot be modified by the user or via HTTP so you CAN trust it. -- 用这个可以有 ...
- install python module
[install python module] 参考:http://docs.python.org/2.7/install/index.html
- HDU 4602 Magic Ball Game(离线处理,树状数组,dfs)
Magic Ball Game Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) ...
- Linux下修改hostname
我维护两三个机房的数十台机器,开发用机器,运营用机器,自己工作机器也是ubuntu,有时开很多ssh,干的还是同样的事情,很容易搞混.所以需要一目了然的知道某台机器的情况,避免犯晕.这就需要修改主机名 ...
- java(2014版)连接数据库的工具类
package util; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; ...
- 使用HTML5的十大原因
你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在IE中不好使,或者你就是喜欢写比较严格的XHTML代码.HTML5是web开发世界的一次重大的改变,事实上不 ...
- C:常量、变量 、 表达式 、运算符、 枚举
常量 变量 表达式 运算符 枚举 1.布尔类型只有真和假 2运算符 >,<,<=,>=,==,!=.判断两个数是否相等要使用双等号‘==’.逻辑运算符的表达式结果非真即假,&a ...
- Number
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/parseInt 概述 parseIn ...
- IE6/IE7/IE8 FF常见问题解决
(从已经死了一次又一次终于挂掉的百度空间人工抢救出来的,发表日期2014-04-08) <style type="text/css" > *{ margin:0px a ...