随笔分类 -  Xcode - objective-c

摘要:no matching function for call to在VS中也许不会报错,或是在objective-c也不会报错,但是在.mm终究会报错,有可能因为函数变量不匹配,即使形参是void(*)。如果是这种问题,可以显示强制装换一下试试 阅读全文

posted @ 2012-03-13 13:54 无忧consume 阅读(934) 评论(0) 推荐(0) |

摘要:NSUInteger an_Integer;NSArray* ipItemsArray;NSString*externalIP;NSURL *iPURL =[NSURL URLWithString:@"http://www.dyndns.org/cgi-bin/check_ip.cgi"];if(iPURL){ NSError*error = nil; NSString*theIpHtml =[NSString stringWithContentsOfURL:iPURL encoding:NSUTF8StringEncoding ... 阅读全文

posted @ 2012-03-13 13:50 无忧consume 阅读(327) 评论(0) 推荐(0) |

摘要:先试试这整个:NSHost* myhost =[NSHost currentHost];NSString *ad = [myhost address];再试试:-(void) getIPWithNSHost{ NSArray*addresses =[[NSHost currentHost] addresses];for(NSString*anAddress in addresses){ if(![anAddress hasPrefix:@"127"]&&[[anAddress componentsSeparatedByString:@"." 阅读全文

posted @ 2012-03-13 13:49 无忧consume 阅读(296) 评论(0) 推荐(0) |

摘要:Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1问题总结及解决方案 最近因为需要,要用C,C++,Objective-C三种C语言3C混编的开发程序,在当然方法也和大家说一下吧,就是在Xcode环境中把C语言的.c文件,C++的.cpp文件与Objective-C的.m文件的文件名全部修改成.mm,这样就可以启用Objective-C++的编译环境3C混编了,可是遇到了上述问题,网上的说法不一致,而且我也遇到了多次这个问题,最后解决... 阅读全文

posted @ 2012-03-13 13:44 无忧consume 阅读(371) 评论(0) 推荐(0) |

摘要:顶点数组, glDrawArrays,glDrawElements - [OpenGL]前两天接触OpenGL ES的时候发现里面没有了熟悉的glBegin(), glEnd(),glVertex3f()函数,取而代之的是glDrawArrays()。有问题问google,终于找到答案:因为OpenGL ES是针对嵌入式设备这些对性能要求比较高的平台,因此把很多影响性能的函数都去掉了,上述的几个函数都被移除了。接下来看看这些函数是如何使用的。1.glEnableClientState(GL_VERTEX_ARRAY); 使能顶点数组功能。2.将准备好的数组告知程序,使用glVertexPoin 阅读全文

posted @ 2012-03-13 10:29 无忧consume 阅读(1331) 评论(0) 推荐(0) |

摘要:Cocoa.h includes the following umbrella headers:#import <Foundation/Foundation.h>#import <AppKit/AppKit.h>#import <CoreData/CoreData.h>Digging deeper, CoreData.h includes#import <Foundation/Foundation.h>#import <CoreData/CoreDataDefines.h>#import <CoreData/CoreDataEr 阅读全文

posted @ 2012-03-12 20:52 无忧consume 阅读(497) 评论(0) 推荐(0) |

摘要:快速知道当前文件夹的准确位置-路径栏在Leopard中,Finder里加入了一个新的特性,叫路径栏。在Finder菜单中点击“显示”,然后选择“显示路径栏”:这时,在Finder窗口下部,就会出现一条路径栏。路径栏有下面几个作用:1. 显示当前文件夹的完整路径。2. 通过双击路径栏上的图标,可以快速进入路径中的任意文件夹。比如:在上图中双击“用户”文件夹图标,Finder就会进入“用户”文件夹。3. 路径栏上的图标不仅可以双击,而且可以直接把文件拖拽到图标上,来进行文件的移动,是不是非常方便? 阅读全文

posted @ 2012-03-12 16:13 无忧consume 阅读(845) 评论(0) 推荐(0) |

摘要:使用Xcode4编译器设定Release/Debug教程是本文要介绍的你内容,主要是来学习xcode 4的相关内容,让我们更一步的去熟悉、了解xcode 4,内容不多,不过真的可以帮助友们去解决xcode 4中编译器的问题。先来看内容。 进入Xcode 4,选择菜单“Product”->“Manage Schemes”,出现下图: 选择一个项目,点击“Edit”,如图: Bulid Configuration 在调试中,如果需要传入参数,在上图中Arguments上设置。 一般这个设置常用于控制台程序,比如:A.exe -p boy 那么,在Arguments上添加-p boy... 阅读全文

posted @ 2012-03-12 15:26 无忧consume 阅读(272) 评论(0) 推荐(0) |

摘要:Mac 电脑下面可以使用苹果自带的编程程序Xcode,可以使用购买电脑时的安装盘来安装这个软件,我目前安装的是xcode 3.2。与大多数程序不同,Xcode并不是安装到/Applications,而是安装到了根目录下的Developer文件夹中1.file->new project->mac os x->application->command line tool, 默认是c,创建一个c项目...这样你就可以直接编译运行了.2.接下来的问题是,运行时让console弹出来. 方法:xcode->preference->debugging->on st 阅读全文

posted @ 2012-03-12 14:43 无忧consume 阅读(878) 评论(0) 推荐(0) |

摘要:介绍Xcode是一个强大的专业开发工具,可以简单快速、而且以您熟悉的方式执行绝大多数常见的软件开发任务。相对于创建单一类型的应用程序所需要的能力而言,Xcode要强大得多,它的设计目的是使您可以创建任何想像得到的软件产品类型,从Cocoa及Carbon应用程序,到内核扩展及Spotlight导入器等各种开发任务,Xcode都能完成。Xcode独具特色的用户界面可以帮助您以各种不同的方式来漫游工程中的代码,并且使您可以访问工具箱下面的大量功能,包括GCC,javac,jikes,和GDB,这些功能都是制作软件产品需要的。它是一个由专业人员设计的、又由专业人员使用的工具。由于能力出众,Xcode已 阅读全文

posted @ 2012-03-11 16:39 无忧consume 阅读(314) 评论(0) 推荐(0) |

摘要:我们都知道在C/C++语言中,堆内存是应该由程序员负责释放的,编译器并不负责释放程序员自己分配的堆内存空间;而在Objective-C语言 中,类实例的释放是通过release方法进行释放的,如果是Autorelease Pool中的实例,程序员还不必自己手动释放相应的内存空间,这点对于习惯在iPhone中使用C/C++风格编写程序的程序员来说,无疑是有点迷惑性 的,例如下面的代码:view plaincopy to clipboardprint?#import<Foundation/Foundation.h>@interfaceMemoryManager:NSObject{@pu 阅读全文

posted @ 2012-03-11 03:03 无忧consume 阅读(211) 评论(0) 推荐(0) |

摘要:还有许多理论知识需要讨论,但与其花许多时间在复杂的数学公式或难以理解的概念上,还不如让我们开始熟悉OpenGL ES的基本绘图功能。请下载OpenGL Xcode项目模板。我们使用此模板而不是Apple提供的模板。你可以解压到下面目录来安装它:/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates/Application/此模板用于全屏OpenGL程序,它具有一个OpenGL视图以及相应的视图控制器。 大部分时候你不需要动到此视图。此视图用于处理一些诸如缓存切换之类的事物,但在两处调用了其 阅读全文

posted @ 2012-03-11 02:29 无忧consume 阅读(235) 评论(0) 推荐(0) |

摘要:从零开始学习OpenGL ES之一 – 基本概念我曾写过一些文章介绍iPhone OpenGL ES编程,但大部分针对的是已经至少懂得一些3D编程知识的人。作为起点,请下载我的Empty_OpenGL_ES_Application.zip(42.39 KB, 下载次数: 14),而不要使用Apple提供的模板。你可以解压到下面位置安装此模板:/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates/Application/已经有大量有关OpenGL的好教程和书籍。但是,却没有多少是关于Ope 阅读全文

posted @ 2012-03-11 02:22 无忧consume 阅读(367) 评论(0) 推荐(0) |

摘要:Objective-C构造函数是本文要介绍的内容,主要是来了解构造函数,它是在创建对象的时候用来初始化对象数据的一种特殊的方法,构造方法返回对象的一个指针,我们可以通过调用超类的 init 方法来获取这个指针。objective-c函数,Objective-C 构造函数,Objective-C函数调用,Objective-C函数声明。构造函数是在创建对象的时候用来初始化对象数据的一种特殊的方法。构造函数可以使用任何方式命名,但是通常,将他们命名为 Init 。构造方法返回对象的一个指针,我们可以通过调用超类的 init 方法来获取这个指针,超类是当前的类所派生自的类,也就是当前类的父类,这.. 阅读全文

posted @ 2012-03-11 01:30 无忧consume 阅读(367) 评论(0) 推荐(0) |

摘要:[iPhone学习笔记五]iPhone程序包结构 当build iPhone程序时,Xcode会将它打成一个包。这个包是文件系统下的一个目录用于将相关资源放到一起。一个iPhone程序包包括可执行程序和程序使用的各种资源(例如程序图标、其他图片和本地化资源等)。下面我们逐个看一下iPhone程序包里到底有什么?MyApp 盛放程序代码的可执行文件。此文件的名称与工程的名称相同。这个文件是必须的。Settings.bundle Settings.bundle是一个像设置程序(Settings Application)添加设置选项的一组文件包。这个文件包中包含有属性列表和其他用于设置和现实属... 阅读全文

posted @ 2012-03-08 00:36 无忧consume 阅读(227) 评论(0) 推荐(0) |

摘要:[iPhone学习笔记四]iPhone的基本设计模式 UIKit框架的设计采用了很多和Cocoa程序类似的设计模式。理解这些设计模式对开发iPhone程序非常重要。因此在学习开发iPhone程序前,有必要了解一下iPhone开发中常用的设计模式。iPhone应用程序中的基本设计模式包括:MVC模式(Model-View-Controller) MVC模式是将你的代码风格成独立的功能模块的良好方法。模型(Model)部分定义了底层数据引擎并负责维护这些数据的整合;视图(View)部分定义了用户界面,它并不知道显示在界面上的原始数据的具体含义;控制器(Controller)部分像是模型和视图之.. 阅读全文

posted @ 2012-03-08 00:35 无忧consume 阅读(213) 评论(0) 推荐(0) |

摘要:[iPhone学习笔记三]事件处理循环 UIApplicationMain处理完程序初始化以后,他会开启时间出来循环和屏幕绘制循环。过程如下图:当用户与iPhone设备交互时,iPhoneOS会检测触摸事件并把它放到事件队列中。负责事件处理的UIApplication对象每次从队列顶部取出事件,并把它传递给最适合处理它的对象。例如在按钮上的点击事件会被传递给相应的按钮对象。时间也可以被传递给控制器或其他并非直接处理改事件的其他对象。 在iPhoneOS的Multi-Touch事件模型中,触摸数据被封装到单独的事件对象中(UIEvent).为了跟踪某个触摸,事件对象包含若干个触摸对象(UIT.. 阅读全文

posted @ 2012-03-08 00:34 无忧consume 阅读(196) 评论(0) 推荐(0) |

摘要:[iPhone学习笔记二]谈谈代理类(delegate class) 程序的代理对象是开发者自己实现的对象,主要负责监听程序的高级行为。代理机制用于避免继承复合UIKit对象(例如UIApplication对象)。使用代理不需要子类继承或重写父类的方法,只要保持复合对象不变,将需要添加或重写的代码放到代理对象中。当有事件发生,复合对象会发送消息给代理对象。 这有点像“钩子”,通过这些“钩子”来执行代码和实现需要的行为。 程序代理负责处理很多重要的系统消息没一个iPhone程序都必须有。这个对象可以是任何实现了UIApplicationDelegate协议(protocol)的对象的实例,U.. 阅读全文

posted @ 2012-03-08 00:33 无忧consume 阅读(229) 评论(0) 推荐(0) |

摘要:[iPhone学习笔记一]iPhone程序的生命周期 任何程序的生命周期都是指从程序加载到程序结束这一短时间。在iPhone中,用户通过点击主页面上的程度图标启动一个程序。点击后,系统会显示一个过渡的画面然后调用main()函数来加载程序。从这一刻开始,大量的初始化工作都交给了UIKit,它加载程序的用户界面并启动事件循环。在时间循环过程中,UIKit将传入的时间和自定义对象相关联并响应程序的命令事件。如果用户的某个操作引起程序的退出,UIKit会通知程序并开始结束程序过程。下图简单的反应了iPhone程序的周期。 在iPhone程序中,main()函数很少被使用。绝大多数实际的工作都交由.. 阅读全文

posted @ 2012-03-08 00:31 无忧consume 阅读(225) 评论(0) 推荐(0) |

摘要:static GLfloat rot = 0.0; static const Vertex3D vertices[]= { {0, -0.525731, 0.850651}, // vertices[0] {0.850651, 0, 0.525731}, // vertices[1] {0.850651, 0, -0.525731}, // vertices[2] {-0.850651, 0, -0.525731}, // vertices[3] {-0.850651, 0... 阅读全文

posted @ 2012-03-07 00:57 无忧consume 阅读(208) 评论(0) 推荐(0) |

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3