OC对象和函数

原创 2015年11月19日 22:53:16
#import <Foundation/Foundation.h>


@interface Car : NSObject
{
    //成员变量
    @public
    int wheels;
    int speed;
}


- (void)run;
@end


@implementation Car
- (void)run
{
    NSLog(@"%d个轮子,速度为%dkm/h的车子跑起来了!",wheels,speed);
}




@end


void test(int w, int s)
{
    w = 20;
    s = 200;
}


void test1(Car *newC)
{
    newC->wheels    =   5;
    
}


void test2(Car *newC)
{
    Car *c2 = [Car new];
    c2->wheels  =   5;
    c2->speed   =   300;
    
    newC = c2;
    newC->wheels    =   6;
}


int main()
{
    Car *c = [Car new];
    c->wheels   =   4;
    c->speed    =   250;
    
    //test(c->wheels, c->speed);
    test2(c);
    
    [c run];


    return 0;
}


另一个程序

/*
 方法和函数的区别:
 1.对象方法都是以减号 - 开头
 2.对象方法的声明必须写在@interface和@end之间
    对象方法的实现必须写在@implementation和@end之间
 3.对象方法只能由对象调用
 4.对象方法归类\对象所有
 
 函数
 1.函数能写在文件中的任意位置(@interface和@end之间除外),函数归文件所有,可在对象方法中调用
 2.函数调用不依赖于对象
 3. 
 
 */


#import <Foundation/Foundation.h>

//@interface跟@interface也不能嵌套,一对一
@interface Car : NSObject
{
    //statoc int wheels;不能随便将成员变量当做C语言中的变量来使用
    //int wheels  =   4;不允许在这里初始化
    @public
    int wheels;
    
}

- (void)run;
- (void)fly;

@end
//@interface跟@implementation不能嵌套
@implementation Car  //实现

- (void)run//方法也不能当做C语言的函数使用static
{
    NSLog(@"%d个轮子的车跑起来了",wheels);
}

@end


int main()//类的声明一定要在main函数前面,不然无法调用,实现可在main函数后面
{
    return 0;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

【Objective-C】02-OC对象作为参数传递给函数

OC对象可以作为函数参数传递给参数,以下简述对象参数在函数中的两种情况: 一、对象作为参数传递到函数中,在函数内部对此对象的参数会影响到外部传递进来的对象。 二、对象作为参数传递到函数中,在函数内部指...
  • HONG321
  • HONG321
  • 2014年12月04日 23:08
  • 2222

OC 对象的内存存储细节(类方法及对象方法的调用细节)

OC 对象的内存存储细节(类方法及对象方法的调用细节)  定义一个类:person  属性:age heifht weight  行为:eat sleep walk  */ @in...
  • jing__jie
  • jing__jie
  • 2017年01月11日 16:51
  • 510

OC中的面向对象编程思想<一>

Objective-C 常写作Objc或者OC. 它的流行归功于Iphone的成功。编写iPhone应用程序主要编程语言就是Objective—C(2014年6月的时候,apple为了新商业战略,吸引...
  • uxyheaven
  • uxyheaven
  • 2015年12月04日 14:20
  • 4920

my学习OC--类的构造函数和析构函数

1. init继承于NSObject这个根类,所有的子类可以不用重写这个实例方法函数,当然也可以在自己的类里重写init实例方法 2.  可以自定义构造函数...
  • imxiangzi
  • imxiangzi
  • 2016年08月14日 16:46
  • 646

OC处理对象-打印对象和description方法

// //  main.m //  打印对象和description方法 // //  Created by Goddog on 15/1/10. //  Copyrig...
  • HUXU981598436
  • HUXU981598436
  • 2015年01月10日 16:34
  • 1441

OC学习篇之---对象的拷贝

在前一篇文章中我们说到了如何解决对象的循环引用问题:http://blog.csdn.net/jiangwei0910410003/article/details/41926369,这一篇文章我们就来...
  • jiangwei0910410003
  • jiangwei0910410003
  • 2014年12月14日 18:02
  • 11502

OC高级特性--Block匿名函数

块是Objective-C语言提供的一个强大特性,博主会介绍块语法的意义、块内存管理、怎样在程序中开发块和怎样使用现有API(如Foundation框架)中的块。 简言之,块提供了一种方式,使用...
  • abc59731090
  • abc59731090
  • 2015年07月06日 19:36
  • 1684

OC学习笔记01-类的声明实现与对象创建,方法声明实现与调用及传参

#include //OC基本库Foundation主头文件 @interface Autobot :NSObject //声明的类继承NSObject类 { //member variable...
  • u012158482
  • u012158482
  • 2015年07月23日 22:46
  • 908

iOS-OC对象模型

iOS-OC对象模型
  • FANYIYAO980404514
  • FANYIYAO980404514
  • 2015年04月04日 01:11
  • 831

OC类和对象-对象和指针

// // main.m // OC面向对象 // // Created by Goddog on 15/1/2. // Copyright (c) 2015年 Goddog. All rig...
  • HUXU981598436
  • HUXU981598436
  • 2015年01月02日 16:50
  • 1308
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OC对象和函数
举报原因:
原因补充:

(最多只允许输入30个字)