Objective-C浮點數轉化整數(向上取整、向下取整)

標籤:Objective-C拓展了C,自然很多用法是和C一致的。比如浮點數轉化成整數,就有以下四種情況。 1.簡單粗暴,直接轉化float f = 1.5; int a; a = (int)f; NSLog("a = %d",a);輸出結果是1。(int)是強制類型轉化,丟棄浮點數的小數部分。2.高斯函數,向下取整float f = 1.6; int a; a = floor(f); NSLog("a =

How Do I Declare A Block in Objective-C?

標籤:How Do I Declare A Block in Objective-C?As a local variable:returnType (^blockName)(parameterTypes) = ^returnType(parameters) {...};As a property:@property (nonatomic,

Objective-C中的@dynamic

標籤:轉自 http://blog.csdn.net/haishu_zheng/article/details/12873151Objective-C中的@dynamic 一、@dynamic與@synthesize的區別@property有兩個對應的詞,一個是@synthesize,一個是@dynamic。如果@synthesize和@dynamic都沒寫,那麼預設的就是@syntheszie var

Objective-C學習筆記-第三天(1)

標籤:今天開始用oc寫iOS程式,遇到的問題有1.在不同的類使用類的方法或者訪問類的屬性的時候(公開的方法或者屬性),方法或者屬性必須在類標頭檔中聲明。2.物件類型的聲明以及定義需要用*,表明這個是一個指向一塊記憶體空間的指標。基本類型則不需要。3.init方法的定義需要判斷是否初始化成功(self是否不為空白)。4.#define 可以預定義一段文本,在編寫代碼的時候可以用預定義的變數名代替這一塊文本。5.使用不同的類的時候要注意匯入標頭檔。6.for

Objective-C學習筆記-第一天(3)

標籤:話不多說,學了這麼多,寫個快速排序先。除了快排,以後有時間還要加堆排、歸併等等。今天學了有,類、協議、文法。因為演算法類,不止一個演算法。所以建立一個Algorithm(演算法)協議:1 #import <Foundation/Foundation.h>2 3 @protocol AlgorithmProtocol <NSObject>4 5 @optional6 +(void)quickSortWithArray:(NSMutableArray*)array

細數Objective-C中的回調機制

標籤:一、協議 協議主要是提供介面、或是類似C++多重繼承功能,為類提供一種修飾機制。協議不是為回調而生的,它應該表述一組互操作約定。 優點: 實現簡單,容易理解。 強型別檢查。 缺點: 類與類間建立了比較強的耦合關係 有可能需要較長期儲存委託以進行回調。如果保留的委託需要有獨佔性,可能會給單件模式、以及多線程帶來麻煩。 類只能通過一個方法完成一種類型的回調。代碼邏輯很容易集中到一個方法中。 大部分回調使用實際無需通過協議暴露給外部。

Objective-C學習筆記-第一天(2)

標籤:Objective-C中的協議,相當於Java中的介面參考:http://www.cnblogs.com/zzy0471/p/3894307.html一個簡單的協議遵循:PersonProtocol.h@protocol 協議名<上級協議名>@required  必須要實現的方法@optional  可選實現的方法(可以不實現)@end 遵循協議前,需引入寫有協議的標頭檔Person.h 類名<協議名>    代表遵循此協議,

Objective-C學習筆記-第一天(1)

標籤:.h標頭檔,用於聲明一些公開的屬性、方法。標頭檔一般不會放太多的東西,沒必要暴露太多介面,私人和封裝。.m主檔案,用於實現.h檔案中的方法,以及一些其它的方法。 -(傳回值)方法名參數1名稱:(參數1類型)  參數1函數內名稱 參數2名稱:(參數2類型) 參數2函數內名稱......;調用靜態(類)方法:[類名 方法];調用執行個體方法:[變數名

Objective-C資料類型之id,SEL,BOOL,nil,NULL和NSNull

標籤: idid是指向Objective-C對象的指標,等價於C語言中的void*,可以映射任何對象指標指向他,或者映射它指向其他的對象。常見的id類型就是類的delegate屬性。SELSEL類型是Objective-C用來定義方法的關鍵字,但卻從不屬於任何類執行個體,其值是通過@selector進行計算,可以把她當做一個函數指標來使用,但實際上的類型是const

【原】談談對Objective-C中代理模式的誤解

標籤:【原】談談對Objective-C中代理模式的誤解本文轉載請註明出處 —— polobymulberry-部落格園1. 前言這篇文章主要是對代理模式和委託模式進行了對比,個人認為Objective-C中的delegate大部分用法屬於委託模式。全文有些摳概念,對實際開發沒有任何影響。前段時間看到的一篇部落格iOS開發——從一道題看Delegate,和這篇部落格iOS APP

Objective-C Runtime能做什嗎?

標籤:在之前的文章中我們介紹了Runtime是什麼,屬於理論性介紹,你看了上篇很迫切的想知道Runtime到底能幹什嗎?不要著急,這一篇Blog將將講解Runtime怎麼應用到實戰中Runtime官方文檔在這裡,包括了介面名字以及使用說明。下文講到的介面都能在此文檔中找到。 KVC中setValue中使用我們知道在KVC中如果直接setValue如果對象沒有這個屬性或者是變數就會直接Crash,如:RuntimeObj *obj = [[RuntimeOb

Objective-C總Runtime的那點事兒(一)訊息機制

標籤:RunTime簡稱運行時。就是系統在啟動並執行時候的一些機制,其中最主要的是訊息機制。對於C語言,函數的調用在編譯的時候會決定調用哪個函數( C語言的函數調用請看這裡 )。編譯完成之後直接順序執行,無任何二義性。OC的函數調用成為訊息發送。屬於動態調用過程。在編譯的時候並不能決定真正調用哪個函數(事實證明,在編 譯階段,OC可以調用任何函數,即使這個函數並未實現,只要申明過就不會報錯。而C語言在編譯階段就會報錯)。只有在真正啟動並執行時候才會根據函數的名稱找

Objective-C物件導向

標籤:轉載、引用請註明來源!Objective-C的類一、文法簡介1、類1)、.h檔案:類的聲明檔案,用於聲明執行個體變數和方法。類的聲明使用關鍵字@interface和@end。【.h中的方法只是聲明,不實現,也就是只說明了方法名、傳回型別、接收的參數及類型,並不會編寫方法的內部代碼】!2)、.m檔案:類的實現檔案,用於實現.h中聲明的方法。類的實現檔案使用關鍵字@implementation和@end。 2、執行個體變數執行個體變數的聲明和C語言定義變數的方法是一樣的,使用&ldq

objective-C nil,Nil,NULL 和NSNull的小結

標籤:小結: nil用來給對象賦值(Object-C的任何對象都屬於id類型),NULL則給任何指標賦值,NULL和nil不能互換,nil用於類指標賦值(在Object-C中類是一個對象,是類的meta-class的執行個體),而NSNull則用於集合操作,雖然它們表示的都是空值,但是使用場合完全不同,所以在編碼時嚴格按照變數類型來賦值,將正確的空值賦給正確的類型,使代碼易於閱讀和維護,也不易引起錯誤。 1.oc最好 用nil   [ nil  

Objective-c setObject:forKey:和setValue:forKey:的區別

標籤:setObject:forKey: 是NSMutableDictionary類的方法                              key參數類型可以是任意類型對象                   

對於Objective-C初學者而言,用instancetype和id來定義一個簡易的建構函式,到底區別在哪?

標籤:在接觸OC語言一段時間後,我們大家都知道未知類型的對象可以用 id 表示,那麼 instancetype

Objective-C中的const ,extern,static

標籤:一.const1>對於const,記住關鍵的一點,它只是修飾右邊的變數.例如:- (void)viewDidLoad { [super viewDidLoad]; // const兩種用法 // const:修飾基本變數p // 這兩種寫法是一樣的,const只修飾右邊的基本變數b const int b = 20; // b:唯讀變數 int const b = 20; // b:唯讀變數 //

[Objective-C]簡單實現一個OC類

標籤:一.文法規範1.類:抽象的描述一件事物,比如將人、狗和貓抽象成動物類  在OC中用兩個檔案來描述一個類1> .h:類的聲明檔案,用於聲明成員變數和方法,類的聲明代碼在關鍵字@interface和@end之間;2>

efffective Objective-C 學習筆記

標籤:第一條:瞭解objective-c語言的起源訊息結構而非函數調用。區別在於:使用訊息結構的語言,其運行時所應執行的代碼由運行環境來決定;而使用函數調用的語言,則由編譯器決定。Objective-c為C語言添加了物件導向特性,是其超集。Objective-C使用動態綁定的訊息結構,也就是說,在運行時才會檢查物件類型。接受一條訊息之後,究竟應執行何種代碼,由運行期環境而非編譯器來決定。掌握C的記憶體模型和指標。第二條:在類的標頭檔盡量少引入其他標頭檔除非確有必要,否則不要引入標頭檔。一般來說,

Objective-C中系統宏的用法總結

標籤:先說一下本文中會提到的內容:##,__VA_ARGS__, __FILE__, __LINE__ , __FUNCTION__等宏變數:先舉一個例子,會用到上面這些宏: #define myprintf(...) printk("[lch]:File:%s, Line:%d, Function:%s," \ __VA_ARGS__, __FILE__, __LINE__ ,__FUNCTION__); 此處的 #define 的作用是將 myprintf(

總頁數: 88 1 .... 50 51 52 53 54 .... 88 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.