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 = 100;
        g.weight = 100;
        g.showImage = @"/Users/apple/Desktop/1.png";
        g.produceDate = (MyDate){2015,10,15};
        g.expireDaer = (MyDate){2015,10,16};
        
        // 买家
        Buyer *buyer = [[Buyer alloc] init];
        buyer.name = @"小明";
        buyer.gender = GenderFemal;
        buyer.age = 20;
        buyer.height = 141;
        
        // 卖家
        Seller *seller = [[Seller alloc] init];
        seller.name = @"张三丰";
        seller.age = 18;
        seller.height = 137;
        seller.goods = g;
        
        // 释放对象
        [g release];
        [buyer release];
        [seller release];
        
    }
    return 0;
}
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/5314562.html,如需转载请自行联系原作者
相关文章
|
6月前
|
弹性计算 异构计算
阿里云服务器多少钱一小时?在哪查询1小时价格表?
阿里云服务器按量付费,1小时起计费。如2核2G的ECS经济型e实例仅0.094元/小时。不同配置价格各异,例如GPU计算型gn6v(64核256G)高达211.68元/小时。查询价格可访问阿里云ECS页面定制配置。包年包月更划算,2核2G服务器低至99元/年
325 4
|
8月前
|
缓存 NoSQL JavaScript
Vue.js应用结合Redis数据库:实践与优化
将Vue.js应用与Redis结合,可以实现高效的数据管理和快速响应的用户体验。通过合理的实践步骤和优化策略,可以充分发挥两者的优势,提高应用的性能和可靠性。希望本文能为您在实际开发中提供有价值的参考。
172 11
|
11月前
|
Kubernetes 监控 数据中心
容器化与微服务:构建高效开发环境的双剑合璧
【10月更文挑战第20天】本文探讨了容器化技术(如Docker和Kubernetes)与微服务架构的结合,如何共同构建高效、灵活的开发环境。容器化解决了环境一致性、快速部署和资源隔离的问题,而微服务架构则提升了系统的可维护性和可扩展性。通过容器编排工具、CI/CD流程和服务网格,两者的结合进一步优化了开发和运维效率。文章还分享了实施这两项技术的最佳实践和职业心得。
|
10月前
|
人工智能 新能源 BI
关于举办“2024年第四届全国大学生技术创新创业大赛”的通知
中国技术创业协会企业市场融通工作委员会将举办“2024年第四届全国大学生技术创新创业大赛”。大赛以“创新驱动,赋能就业”为目标,促进学生的创新创造能力,普及创新创业知识,拓宽就业创业渠道,挖掘创新人才,培育多元化的未来产业推进力量。
638 0
|
12月前
|
负载均衡 5G UED
蜂窝网络中的切换(Handover)及其类型详解
蜂窝网络中的切换(Handover)及其类型详解
1313 12
|
NoSQL 算法 Java
(十三)全面理解并发编程之分布式架构下Redis、ZK分布式锁的前世今生
本文探讨了从单体架构下的锁机制到分布式架构下的线程安全问题,并详细分析了分布式锁的实现原理和过程。
220 6
|
Prometheus 监控 Cloud Native
微服务框架(十九)Spring Boot 可视化监控 Prometheus + Grafana
  此系列文章将会描述Java框架Spring Boot、服务治理框架Dubbo、应用容器引擎Docker,及使用Spring Boot集成Dubbo、Mybatis等开源框架,其中穿插着Spring Boot中日志切面等技术的实现,然后通过gitlab-CI以持续集成为Docker镜像。   本文为Spring Boot 通过 micrometer 的监控门面,实现Prometheus + G...
|
供应链 机器人
伙伴客户案例|阿里云RPA携手尚阳科技,助力大型制造零售企业全面提升业务处理效率——供应链场景篇
RPA全称机器人流程自动化(Robotic Process Automation),是一种新兴的“数字劳动力”,可以替代或辅助人完成规则明确的重复性劳动,大幅提升业务流程效率,实现企业业务流程的自动化和智能化,从而降本增效。目前,RPA解决方案的应用场景几乎涵盖了所有行业,包括银行、保险、制造、零售、医疗、物流、电子商务甚至政府和公共机构。
伙伴客户案例|阿里云RPA携手尚阳科技,助力大型制造零售企业全面提升业务处理效率——供应链场景篇
|
JavaScript 前端开发
「后端小伙伴来学前端了」Vue集成 Element-tiptap 富文本编辑器
「后端小伙伴来学前端了」Vue集成 Element-tiptap 富文本编辑器
1174 0
「后端小伙伴来学前端了」Vue集成 Element-tiptap 富文本编辑器
|
消息中间件 存储 SQL
终于!RocketMQ 迎来第五个大版本,深度解读“消息、事件、流”超融合处理平台
RocketMQ 是一个来自阿里巴巴的分布式消息中间件,于 2012 年开源,并在 2017 年正式成为 Apache 顶级项目。
836 0
终于!RocketMQ 迎来第五个大版本,深度解读“消息、事件、流”超融合处理平台