zoukankan      html  css  js  c++  java
  • OC基础1:一些基本概念

      "OC基础"这个分类的文章是我在自学Stephen G.Kochan的《Objective-C程序设计第6版》过程中的笔记。

    1、关于类方法和实例方法:

       (1)、类方法是直接使用类引用的方法,不需要实例化就可以调用方法,实例方法对应于具体的实例,需要实例化才能够使用这些方法;

       (2)、类方法以“+”开头,实例方法以“-”开头;

       (3)、不管是什么方法,都要定义在@implementation部分里面;

       (4)、一般在项目中类方法都是设置为工具类使用的。

    2、在程序的@interface部分中声明方法的时候,比如:

         @interface Fraction: NSObject

         -(void) print;

         -(void) setNumerator: (int) n;

         -(void) setDenominator: (int) d;

         @end

       在这段代码中,方法前面的负号(-)表示这是一个实例方法;如果是正号(+),则这是一个类方法

    方法前的括号里是返回值,如果返回值为void,那么在方法末尾可以不执行return语句,或者可以执行以下语句:

        return 

    3、方法的组成分析:

         -           (void)        setNumerator  :            (int)        n;

         方法类型    返回类型     方法名称     方法有参数  参数类型   参数名称

    4、Fraction *myFraction;

       myFraction = [Fraction alloc];

       myFraction = [myFraction init];

       可以简写为:

       Fraction *myFraction = [[Fraction alloc] init];

    5、关于int main (int argc, char * argv[]):

    argc是命令行总的参数个数,

    argv[]是argc个参数;

    比如你输入:
    test   a.c   b.c   t.c  
    则  
    argc   =   4     
    argv[0]   =   "test"  
    argv[1]   =   "a.c"  
    argv[2]   =   "b.c"  
    argv[3]   =   "t.c"

    6、实例方法可以直接访问某一个实例的变量,而类方法只针对类,没法访问具体的实例;

    7、关于命名规则:可以以_开头,但是不能以数字开头

  • 相关阅读:
    cout输出字符串指针
    《深度探索c++对象模型》chapter2 构造函数语义学
    c++virtual inline 是否冲突
    《深度探索c++对象模型》chapter1关于对象对象模型
    《More Effective C++》 条款5 谨慎定义类型转换函数
    《Effective C++》条款26 防卫潜伏的ambiguity模棱两可的状态
    《Effective C++》条款14 总是让base class拥有virtual destructor
    《Effective C++》内存管理
    c++类型转换Type Cast)
    C++中的new/delete与operator new/operator delete
  • 原文地址:https://www.cnblogs.com/shayneyeorg/p/4611571.html
Copyright © 2011-2022 走看看