1. 關聯是指把兩個物件相互關聯起來,使得其中的乙個物件作為另外乙個物件的一部分。
在不修改類的定義而為其物件增加儲存空間。
引數有四個,第乙個為源物件。第二個為關聯關鍵字。第三個關聯的物件。第四個為關聯策略(是乙個enum)
建立關聯:
objc_setassociatedobject
(imgview, &
key, urlstr,
objc_association_assign);
獲取相關聯的物件
nsstring
*url =
objc_getassociatedobject
(imgview,&
key);
斷開關聯有兩種方式:
1.使用 objc_setassociateobjiect
(imgview,&
key, nil,
objc_association_assign
); 使用同樣的關聯關鍵字。將被關聯的物件置為nil.此時的關聯策略也無關緊要了
2.也可以使用
objc_removeassociatedobjects。
可以斷開所有關聯。通常情況下不建議使用這個函式,因為他會斷開所有關聯。只有在需要把物件恢復到「原始狀態」的時候才會使用這個函式。
關鍵字是乙個viod型別的指標。
每乙個關聯的關鍵字必須是唯一的。通常都是會採用靜態變數來作為關鍵字。可以這樣寫
const
void
*key
;或者static
char
key;
的一些用法
action標籤,顧名思義,是用來呼叫action的標籤,在jsp中頁面中,可以具體指定某一命名空間中的某一action。而標籤的主體用於顯示及渲染actionr的處理結果。action標籤有如下幾個屬性 id 可選屬性,作為該action的引用id name 必選屬性,指定呼叫action nam...
IImage的一些用法
因為美工做出來的圖是png24,帶alpha通道透明的,用傳統的bitblt方法沒有辦法顯示 可能是本人比較笨啦,哈哈 所以採用了iimage的方法來進行畫圖。使用iimage的draw的方法時,要畫區域性是發現總是不對,查了一下msdn,發現是如下的問題。optional const rect s...
gcc 的一些用法
gcc編譯多個原始檔 一.常用編譯命令選項 假設源程式檔名為test.c。3.選項 e 用法 gcc e test.c o test.i 作用 將test.c預處理輸出test.i檔案。4.選項 s 用法 gcc s test.i 作用 將預處理輸出檔案test.i彙編成test.s檔案。5.選項 ...