iOS 如何建立可以帶引數的巨集定義
首先,我們先來建立一個巨集定義,如下
#define LABEL(x,y,w,h) [[UILabel alloc]initWithFrame:CGRectMake(x, y, w, h)];
建立完成後,我們要看兩個很重要的位置,LABEL(x,y,w,h)和CGRectMake(x, y, w, h),我們可以看到,括號裡的x,y,w,h,為四個變數引數,也就是說,帶引數的巨集定義,括號的內容必須要一直,引數對應,這樣的話:
LABEL(0, 0, 50, 50)
實際執行的錯操作:
[[UILabel alloc]initWithFrame:CGRectMake(
效果:
UILabel *page_numberL;
page_numberL = LABEL(0, 0, 50, 50);
這樣我們就不需要再寫好多墨跡的程式碼,例如:[UILabel alloc]initWithFrame:CGRectMake我們直接被一個 LABEL 代替了
相關推薦
C語言帶引數巨集定義
轉自:http://c.biancheng.net/cpp/html/66.html C語言允許巨集帶有引數。在巨集定義中的引數稱為形式引數,在巨集呼叫中的引數稱為實際引數,這點和函式有些類似。 對帶引數的巨集,在呼叫中,不僅要巨集展開,而且要用實參去代換形參。 帶參巨集定義的一般形式為:
iOS中常用的巨集定義總結
這篇文章主要給大家介紹了關於iOS中常用的巨集定義的相關資料,例如UI元素、Log、系統、顏色類等等的示例程式碼,文中介紹地方非常詳細,需要的朋友可以參考借鑑,下面隨著小編來一起學習學習吧 前言 巨集定義在C系開發中可以說佔有舉足輕重的作用,為了簡化開發流程,提
行內函數與帶引數巨集區別(筆記)
1.行內函數呼叫時,會進行型別檢查,要求實參和形參的型別一致,另外行內函數會先對實參表示式進行求值,然後傳遞給形參;而巨集呼叫時只用實參簡單地替換形參。 2.行內函數實在編譯的時候,在呼叫的地方將程式碼展開,而巨集則是在預處理時進行替換的。 3.C++中建議採用inli
iOS生成隨機色巨集定義
在此基礎上我們可以寫出隨機色產生的巨集: #define random(r, g, b, a) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue
unity自定義巨集定義以及常用自帶的巨集定義
如下是系統有的巨集, //如果你的平臺已經被你switch platform 你的那個平臺過後,對應的輸出列印是彩色的,否則是灰色的 #if UNITY_IPHONE Debug.Log("UNITY_IPHONE"); #elif UNITY_ANDROI
怎麼讓VC6.0支援可變引數巨集定義?
用不著過載()這樣就行:#include <stdarg.h> //包含va_list#include <stdio.h> //包含vsprintf()#include <string.h>#define MyPrtLog CPrtLogF
ORACLE 建立帶引數檢視-實踐
PS:最近在做一個需求,移交A人多個業務表(7個)的資料給另幾個人(就是查詢出A的業務資料,把相應欄位改成其他人),想到的辦法就是建立一個檢視union all 所有業務表。根據A編號去查詢業務資料,所以考慮通過每個業務表加上客戶編號去過濾資料,提高查詢效能。但是這個客戶編號
iOS 如何建立可以帶引數的巨集定義
首先,我們先來建立一個巨集定義,如下 #define LABEL(x,y,w,h) [[UILabel alloc]initWithFrame:CGRectMake(x, y, w
c++ 帶引數的巨集定義實現反射機制
lua 這種指令碼語言用久了,總覺得反射機制就應該理所當然的嵌入在語言特性裡。 比如希望根據自己傳的型別名變數,動態去 new 一些例項。在 lua ,js 裡做起來就非常簡單,然而在 c++裡面做起來,就需要稍微費些周折。 好在 c++ 巨集定義 支援傳入引數
帶引數的巨集定義應該怎麼寫,引數不能加括號
2013-09-19 20:48:21 如下,巨集定義帶引數時,巨集名中引數不能加括號: 1 //對於帶引數的巨集定義,引數不能加括號,提示'(' : unexpected in macro formal parameter list 2 //#define MAX((a),(b)) ( (lo
定義一個帶引數的巨集,求出三個數中最大的一個數
#include <iostream> using namespace std; #define MAX(a,b,c) ((a) > (b)?((a)>(c)?(a):(
CreateProcess 建立帶命令列引數的程序時,報錯或者提示記憶體位置無效的可能的一個原因
可能的一個原因:命令列引數使用了常量。 例如: CreateProcess(NULL, "notepad",NULL,NULL,FALSE,CREATE_NO_WINDOW,NULL,NULL,&si,&pi); 解釋: pszApplicationName和ps
如何通過 讀取配置引數 而不是 預編譯 巨集定義方式 來決定是否執行printf函式
在一個專案中,本來開始決定通過巨集定義方式來決定是否進行 printf 列印除錯資訊的,但後面考慮到使用配置引數的方式應該更好,因為通過巨集定義方式,還需要再編譯一遍程式才能進行顯示,而通過讀取配置引數方式,只需要在配置檔案中更改配置項即可,這樣更符合實際需要。 大致思路:先將需要列
iOS開發巨集定義(#define)注意
在開發中常用#define來記錄各種數值,一般情況下是沒有問題的,但是當巨集中有加減運算,並被用於乘除等運算中時計算的數值就可能不準確。 舉例 #define kItemWith self.bounds.size.height - 10 這裡定義了一個item的長度,正常情
執行緒建立 pthread_create 中自定義引數注意事項
1. 函式原型 int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine) (void *), void *arg); 本文主要討論最後一個引數,同時傳遞多個的問題
iOS開發之--巨集定義與const的區別及使用方法
巨集定義的常見用法: 定義一段程式碼,或指定字串抽成巨集。 const(常量): 當有字串常量的時候,蘋果推薦我們使用const,蘋果經常把常用的字串定義成const 巨集定義與const的區別: 編譯時刻:巨集是預編譯(編譯之前處理),const是編譯階段。 編
關於C++巨集引數的定義型別問題
巨集引數可以是沒有定義型別的東西,很奇特! REGISTER_OSGEARTH_LAYER(land_cover_dictionary, LandCoverDictionary); #define REGISTER_OSGEARTH_LAYER(NAME,CLASS) \
iOS 使用巨集定義函式和程式碼塊
iOS使用巨集定義函式和程式碼塊 今天在開發過程中碰到一個問題:就是父類中要向外傳送通知,然後子類中或者其他類中來接收它。當然一般是把它寫到類方法中去,但是有個問題,就是如果呼叫的類不是它的子類,就不能直接呼叫,當然也可以採用靜態方法實現,我這裡主要是想用巨集
iOS-OC方法/屬性過期的標記(巨集定義)
如你所知,已廢棄(Deprecated)的API指的是那些已經過時的並且在將來某個時間最終會被移除掉的方法或類。通常,蘋果在引入一個更優秀的API後就會把原來的API給廢棄掉。因為,新引入的API通常意味著可以更好的發揮新硬體或作業系統的效能,或者可以使用一些在構建原有A
C++建構函式—建構函式的宣告與定義、帶引數的建構函式
建構函式是一種隨著物件建立而自動被呼叫的函式,它的主要用途是為物件作初始化。那麼,建構函式到底是什麼樣子的呢?建構函式的宣告與定義 在C++中,規定與類同名的成員函式就是建構函式。需要注意的是,建構函式應該是一個公有的成員函式,並且建構函式沒有返回值型別。以下是我們為連結串