原创 OC中assign、copy 、retain等關鍵字的含義

assign: 簡單賦值,不更改索引計數 copy: 建立一個索引計數爲1的對象,然後釋放舊對象 retain:釋放舊的對象,將舊對象的值賦予輸入對象,再提高輸入對象的索引計數爲1 Copy其實是建立了一個相同的對象,而retain不是:

原创 結構體運算符重載

僅供參考,這個是轉載的,對於一些重載,比如說重載=操作符,對原作者結構認同,但是對於原作者的重載方法不認同,所以已經修改,這個如果希望看到原版,請參考本文最後的原文鏈接 1、定義結構體 <span style="font-size:14p

原创 單鏈表逆序或者逆序輸出

分爲兩種情況,一種是隻逆序輸出,實際上不逆序;另一種是把鏈表逆序。   ********************逆序輸出*********************** <span style="font-size:14px;">#inc

原创 NSString的常用用法(補充)

溫故知新,常用常新 //1、創建常量字符串。 NSString *astring = @"This is a String!"; //2、創建空字符串,給予賦值。 複製代碼 NSString *astring = [[NSString a

原创 單向鏈表的操作

#include <iostream> using namespace std; typedef char ElemType;//定義char類型的ElemType,方便修改 typedef struct LNode//定義一個結構體 {

原创 NSNumber與NSInteger的區別

Objective-C 支持的類型有兩種:基本類型 和 類。 基本類型,如同C 語言中的 int 類型一樣,拿來就可以直接用。 而類在使用時,必須先創建一個對象,再爲對象分配空間,接着做初始化和賦值。 類的初始化,需用類自身的方法 (類方

原创 NSString 使用方法

objective-c 中核心處理字符串的類是NSString 與 NSMutableString,這兩個類最大的區別就是NSString創建賦值以後該字符串的內容與長度不能再動態的更改,除非重新給這個字符串賦值。而NSMutable

原创 C++中虛函數的機制

其實很多人都知道,虛函數在c++中的實現機制就是用虛表和虛指針,但是具體是怎樣的呢?從more effecive c++其中一篇文章裏面可以知道:是每個類用了一個虛表,每個類的對象用了一個虛指針。具體的用法如下:class A { pub

原创 雙向鏈表的操作

#include <iostream> using namespace std; //打印選項 void printTheSelect() { cout<<"\n1.初始化雙向鏈表\n2.打印雙向鏈表\n3.逆序打印雙向鏈表\n

原创 static和const的區別和用處

const總結 1.常對象:const 類名 對象名[()] 例如const Cdate d1(2008,8,8) d1就是常對象,對象d1中的所有成員的值都不能被修改,定義常對象必須要有初值,不能做左值,如果定義了常對象,則不能調用

原创 C++單例模式

設計模式是編程的重點,往往在面試時都會考查,而單例模式是最爲簡單、最爲常見、也最該掌握的模式。所以面試時對設計模式的考查考的最多的就是單例模式。 下面我們就來看看單例模式如何實現(C++代碼): #include<iostream> us

原创 NSURL的用法

1:NSURL初始化方法: [csharp] view plaincopy NSURL *url=[NSURL URLWithString:@"http://www.baidu.com?id=1"];   2:解

原创 NSString的用法總結

// // main.m // String // // Created by neworigin on 14-9-17. // Copyright (c) 2014年 Damon. All rights reserved. //

原创 C語言中堆和棧的區別

堆和棧的區別 一、預備知識—程序的內存分配 一個由C/C++編譯的程序佔用的內存分爲以下幾個部分 : 1、棧區(stack)— 由編譯器自動分配釋放 ,存放函數的參數值,局部變量的值等。其操作方式類似於數據結構中的棧。 2、堆區(he

原创 cocos2d-x的碰撞檢測

在網上看到的是cgrect的方法 CGRect projectileRect = CGRectMake(projectile.position.x , projectile.position.y , projectile