|
c*********e 发帖数: 16335 | 2 我c, objective-c都用来编过程序,但是看不懂goodbug写的啥意思。
objective-c和c 完全2码事,人家objc还有rc呢。
认真看古德霸的解释 |
|
S*A 发帖数: 7142 | 3 声明一下,只是小混混,不是大牛。
ObjC 我觉得是超级优美而且效率又高的语言。
ObjC 和 C 完全兼容,无缝链接。C++和 C99是不可能
能完全兼容的。我隐约记得 template 和 C99 的结构上
的是无法融合的。
ObjC 的 interface 要比 C++ 的多重继承优美很多而且
灵活很多。整个语言也要比 C++简单很多,C++ 的 template
过于复杂。ObjC 的 OO 更接近 Small Talk。
ObjC 的语言本身是多平台的, gcc-objc Linux 也有,
而且 Linux 上面也有 GNUStep 这样的东西。
ObjC 不能很好推广,其中主要一个原因在与库。因为
只有 Apple 一家用,所以语言本身的标准库界定不明显。
很多 Apple 的库在其他 OS 上面运行不起来,给这个语言的
移植性造成了一定困难。单单是语言本身,移植性是非常好
的,基本上和 C 一样,关于 Obj 基本上没有什么变化。
特别是 Clang 以后,很多平台都可以跑。
ObjC 的 Object Call 实现是非常精妙的,用很少的代价和
性能(机器码的数量和复... 阅读全帖 |
|
f***c 发帖数: 338 | 4 写了一段代码,用g++编译顺利通过。
想到前几天曾讨论过编译器对int main(),void main()的处理不同问题,就顺手试了cc
和gcc。这一试不打紧,居然都不能通过。
OS: Debian GNU/Linux 6.0.3 (squeeze)
然后就看看个编译器的version,居然是一样的。但是对同样的代码的编译处理区别怎
么这么大呢?
彻底懵了,请达人解惑,谢谢。
g++ -v
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.4.5-8' --
with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c
++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared
--enable-multiarch --enab... 阅读全帖 |
|
S*A 发帖数: 7142 | 5 我试过,根本没法用。没有什么人维护。
问题在于 ObjC 的 Foundary ,如果没有 NS*
那套的话,ObjC 什么都干不了。
Linux 里面的 Foundary 模仿 Apple 都很烂,
我试过好几个版本,最简单的 Dictionary 链接都通不过。
Apple 的 Foundary 理论上 Open Source, 但是只有老调牙的版本,
Linux上编译还不通过,要改很多地方。
我后来就彻底放弃了。
Google Go 要比 Objective C 强,写起来快。唯不如的地方
是 Objective C 可以直接调用 C code. Go 要写 binding.
其他内存管理和简洁程度,可读性 Go 都要好些。Go 也完全借用
了 ObjC 那套 Interface 的东西。ObjC 内存管理很繁琐,
有 GC 以后也没有逆转这个局面。 |
|
s******g 发帖数: 755 | 6 【 以下文字转载自 Apple 讨论区 】
发信人: faucetQ (fq), 信区: Apple
标 题: [Mac Dev]整了个ObjectiveC的笔记,看看气氛对得上不
发信站: BBS 未名空间站 (Mon Feb 2 21:38:18 2009), 转信
整了个类似ObjectiveC学习笔记的东西,发上来大伙看看有兴趣不。
修改了一点,增加了NSAutoreleasePool的内容。
增加了NSString内容。
===========俺系分隔线==================
本文假设读者有基本的C编程能力,如果有C++或者Java的背景会更容易理解但是不是必须。
ObjectiveC基本语法
消息
在objectiveC中,向一个对象发送一个消息的语法为
[ obj method:parameter];
类似的功能在C++中写作
obj->method(parameter);
在java中写作
obj.method(parameter);
在smalltalk中写作
obj method:parameter
显而易见objectiveC和smalltalk... 阅读全帖 |
|
f*****Q 发帖数: 1912 | 7 整了个类似ObjectiveC学习笔记的东西,发上来大伙看看有兴趣不。
修改了一点,增加了NSAutoreleasePool的内容。
增加了NSString内容。
===========俺系分隔线==================
本文假设读者有基本的C编程能力,如果有C++或者Java的背景会更容易理解但是不是必须。
ObjectiveC基本语法
消息
在objectiveC中,向一个对象发送一个消息的语法为
[ obj method:parameter];
类似的功能在C++中写作
obj->method(parameter);
在java中写作
obj.method(parameter);
在smalltalk中写作
obj method:parameter
显而易见objectiveC和smalltalk的语法基本是相同的。
当有两个或者两个以上的参数时,通常试用以的语法
[ obj method:parameter1 WithSecondParameter:parameter2];
定义一个类的代码放在一个.h文件中,下面是一个例子。
//macdevexample1.h
... 阅读全帖 |
|
j***n 发帖数: 301 | 8 【 以下文字转载自 Programming 讨论区 】
发信人: jamen (jamen), 信区: Programming
标 题: 问个javascript的问题
发信站: BBS 未名空间站 (Fri Jul 3 11:50:31 2009, 美东)
为什么document.write没有任何输出呢?
|
|