1,建構函式的作用:用來對alloc建立的物件(及用alloc來分配儲存空間,是一塊**地)進行初始化。如果初始化失敗,則返回nil。
2,如果是無參建構函式,函式名必須是init。返回值必須是id,函式前面必須是『-』號,如:- (id)init;。系統會自帶乙個無參的建構函式,作用是將當前物件的所有成員的內容初始化為0。
3,self表示當前物件,當前物件 == 呼叫該函式的物件。
4,如果有多個建構函式,且其中的**有重複的地方,可以考慮函式之間的相互呼叫(遞迴函式
/*
建立乙個描述人的類,屬性和方法
*/#import
//@inte***ce用於宣告乙個類和類中的成員變數以及方法的宣告
@inte***ce persion : nsobject
//建構函式用於對物件的初始化
- (id)init;
- (id)initwithname:(char *)name;
- (id)initwithname:(char *)name andage:(nsinteger)age;
- (void)eat;
- (void)run;
- (void)sleep;
@end
@implementation用於對函式中方法的實現
#import "persion.h"
@implementation persion
- (id) initwithname:(char *)name
return self;
}- (id) initwithname:(char *)name andage:(nsinteger)age
return self;
}- (id) init
return self;
}- (void) eat
- (void) run
- (void) sleep
@end
呼叫建構函式筆記
include using namespace std class cpoint 帶乙個引數的可用於型別轉換的建構函式 explicit 加上 explicit 可防止 cpoint pt1 1 這種隱性轉換 cpoint int ix 帶引數的建構函式 cpoint int ix,int iy 拷...
拷貝建構函式筆記
格式 person const person p person視為乙個任意的類名 const 使p的成員值不能發生改變 1 括號法 person p1 person p2 10 有參建構函式 person p3 p2 呼叫拷貝建構函式 注意事項 呼叫預設建構函式時,不要加 解釋 加括號時,編譯器會認...
拷貝建構函式 筆記
乙個建構函式的引數是自身類型別的引用,且任何額外引數都有預設值,則此建構函式是拷貝建構函式。class foo如果我們沒有為類定義拷貝建構函式,編譯器會為我們定義乙個。與合成預設建構函式不同,即使我們定義了其他建構函式,編譯器也會為我們合成乙個拷貝建構函式。合成的拷貝建構函式會將引數的成員逐個拷貝到...