OC 中多参数方法声明

原创 2016年05月31日 11:59:57
#import <Foundation/Foundation.h>

@interface Calculator : NSObject
{
    @public
    int number;
}
-(double)pi;  //返回 PI 的值
//一个方法名对应一个冒号,冒号也是方法的一部分
-(double)pingfang:(double)number;  //实现计算器的平方运算
-(double)SumOfnum:(double)num1 andNum2:(double)num2;  //实现计算器的加法运算

@end
@implementation Calculator
-(double)pi;
{
    return 3.1415926;
}
-(double)pingfang:(double)number;
{
    return number * number;
}
-(double)SumOfnum:(double)num1 andNum2:(double)num2
{
    return num1 + num2;
}
@end
int main(int argc,char *argv[])
{
    Calculator *c =[ Calculator new];
    NSLog(@"pi的值为:%f",[c pi]);
    c->number = 2;
    NSLog(@"%i的平方为%f",c->number,[c pingfang:c->number]);
    NSLog(@"两个数的和为%f",[c SumOfnum:2 andNum2:3]);
}

注意:

      1:OC中不存在方法重载,如果两个方法的方法名重复,程序将报错

@implementation Calculator
-(double)pi;
{
    return 3.1415926;
}
-(double)pi;
{
    return 3.14;
}

-(double)pingfang:(double)number;
{
    return number * number;
}
-(double)SumOfnum:(double)num1 andNum2:(double)num2
{
    return num1 + num2;
}
@end

    

  2:-(double)pi;

     -(double)pi:(int)a;是两个不同的方法

  3:同一个类中不允许两个对象方法同名

  4:方法定义

 

 5:多参数方法定义


6:匿名对象     

[[Car newrun;  //程序不会运行错误,但是会产生内存泄漏;

Car new]->speed=100; //返回值将是0,因为每次都新建了一个Car对象.而speed的初始值为0;

#import <Foundation/Foundation.h>
@interface Car:NSObject
{
    
    @public
    int speed;
}
-(void)run;
@end
@implementation Car

-(void)run
{
    NSLog(@"速度为%i的车子跑起来了",speed);
}

@end
int main()
{
//    Car *car = [Car new];
//    car->speed=100;
    [Car new]->speed=100;
    [[Car new]run];
    
}


黑马程序员-OC中对象方法的声明与调用(多个参数)

OC中对象方法的声明与实现(多个参数)

IOS . OC多参数函数

 Objective-C 多参数函数: 多参数的函数定义: -(返回值类型) 函数名1 : (参数1类型) 参数1  函数名2 :(参数2 类型) 参数2 调用: [对象  函数名1: ...

c++模板实现多参数任意传 - 方法实现

游戏中lua脚本中,如果实现了c++调用lua脚本时参数任意传,那真的是爽的一逼。这个是从《c++ primer plua 6th》中看到的,是以方法实现的递归,在另一本书《modern c++ de...

iOS自定义多参数类型方法

前几天做自定义UIAlertView的时候,想仿造系统自带的初始化方法做一个AlertView,里面涉及到不确定多参数的设置和使用问题。这里做一下记录。...

MyBatis中mapper接口方法多参数传入

测试一个更新用户密码的mapper方法的时候出现了这个异常: Caused by: org.apache.ibatis.binding.BindingException: Parameter 'pas...

iOS中performSelector+@selector多参数传递解决方法

关于performSelector传递参数一般不能超过2个,但是现实开发中我们有时需要用到传递大于2以上的参数,这个时候performSelector就不能满足要求了。所以这里总结了开发中解决的办法,...
  • zzrs123
  • zzrs123
  • 2016年09月27日 10:26
  • 2547

PB窗口之间传递多参数的方法

在PowerBuilder中函数OpenWithParm,CloseWithReturn,OpenSheetWithParm,windowname.OpenUserObjectWithParm等都有一...
  • anyqu
  • anyqu
  • 2012年09月06日 12:54
  • 736

PHP中多参数方法的重构

假设我们要完成一个保存文章的功能,如果采用函数编程的方式,大概会是下面这个样子: 01 function saveArticle($title, $content, $categoryId) ...
  • markely
  • markely
  • 2014年04月15日 00:18
  • 525

PB窗口之间传递多参数的方法

在PowerBuilder中函数OpenWithParm,CloseWithReturn,OpenSheetWithParm,windowname.OpenUserObjectWithParm   ...

PB窗口之间传递多参数的方法

在PowerBuilder中函数OpenWithParm,CloseWithReturn,OpenSheetWithParm,windowname.OpenUserObjectWithParm ...
  • tlammon
  • tlammon
  • 2015年01月09日 16:20
  • 2439
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:OC 中多参数方法声明
举报原因:
原因补充:

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