Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Objective C 2.0 ¼òÃ÷½Ì³Ì (5) ÊôÐÔ(Property)


Objective C 2.0 ¼òÃ÷½Ì³Ì (5) ÊôÐÔ(Property)





×÷ÕߣºAdministrator
  

ÖÜÁù, 2009Äê 03ÔÂ 28ÈÕ 07:47
Objective C 2.0 ΪÎÒÃÇÌṩÁËproperty¡£Ëü´ó´ó¼ò»¯ÁËÎÒÃÇ´´½¨Êý¾Ý³ÉÔ±¶Áдº¯ÊýµÄ¹ý³Ì£¬¸üΪ¹Ø¼üµÄÊÇËüÌṩÁËÒ»ÖÖ¸üΪ¼ò½à£¬Ò×ÓÚÀí½âµÄ·½Ê½À´·ÃÎÊÊý¾Ý³ÉÔ±¡£
ÎÒÃÇÏÈÀ´¿´Ò»ÏÂÔÚObjective C 1.xÏÂÎÒÃÇÉùÃ÷BookÀàµÄÍ·Îļþ£º
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//
// Book.h
 
#import <Cocoa/Cocoa.h>
 
 
@interface Book : NSObject {
NSString *title;
NSNumber* numofpages;
}
 
- (id)initWithTitle:(NSString*) booktitle andNumofpages:(NSNumber*) num;
 
- (NSString*) title;
- (void) setTitle:(NSString*)newtitle;
 
- (NSNumber*) numofpages;
- (void) setNumofpages:(NSNumber*)newnumofpages;
 
- (NSString*) summary;
 
@end
ÔÚObjective C 2.0Ï£¬ÎÒÃÇ¿ÉÒÔͨ¹ýÉùÃ÷ÓëÊý¾Ý³ÉԱͬÃûµÄpropertyÀ´Ê¡È¥¶Áдº¯ÊýµÄÉùÃ÷¡£´úÂëÈçÏÂËùʾ£º
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
//
// Book.h
 
#import <Cocoa/Cocoa.h>
 
 
@interface Book : NSObject {
NSString *title;
NSNumber* numofpages;
}
 
- (id)initWithTitle:(NSString*) booktitle andNumofpages:(NSNumber*) num;
 
@property (retain) NSString* title;
@property (retain) NSNumber* numofpages;
 
@property (readonly) NSString* summary;
 
@end
ÎÒÃÇΪÿһ¸öÊý¾Ý³ÉÔ±ÉùÃ÷ÁËÒ»¸öproperty¡£¼´Ê¹BookÀàÖÐûÓÐsummaryÕâ¸öÊý¾Ý³ÉÔ±£¬ÎÒÃÇͬÑù¿ÉÒÔÉùÃ÷Ò»¸öÃûΪsummaryµÄproperty¡£ÉùÃ÷propertyµÄÓ﷨Ϊ£º
@property (²ÎÊý) ÀàÐÍ Ãû×Ö;
ÕâÀïµÄ²ÎÊýÖ÷Òª·ÖΪÈýÀࣺ¶ÁдÊôÐÔ£¨readwrite/readonly£©£¬setterÓïÒ⣨assign/retain/copy£©ÒÔ¼°atomicity£¨nonatomic£©¡£
assign/retain/copy¾ö¶¨ÁËÒÔºÎÖÖ·½Ê½¶ÔÊý¾Ý³ÉÔ±¸³ÓèÐÂÖµ¡£ÎÒÃÇÔÚÉùÃ÷summary properyʱʹÓÃÁËreadonly£¬ËµÃ÷¿Í»§¶ËÖ»ÄܶԸÃproperty½øÐжÁÈ¡¡£atomicityµÄĬÈÏÖµÊÇatomic£¬¶ÁÈ¡º¯ÊýΪԭ×Ó²Ù×÷¡£
ÏÂÃæÎÒÃÇÀ´¿´Ò»ÏÂÔÚObjective C 1.x ÏÂimplementationÎļþ£º
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16


Ïà¹ØÎĵµ£º

C/C++»ù±¾Êý¾ÝÀàÐÍ

ÁËCÈ»ºóC++£¬È»ºóMFC/Windows,È»ºóÊÇC#,ÆäÖÐÊý¾ÝÀàÐͺܶ࣬ÓÉ»ù±¾ÀàÐÍÑÜÉúµÄtypedefÀàÐÍÒ²N¶à¡£ÊìÖª»ù±¾Êý¾ÝÀàÐÍÊÇÎÒÃÇÕýÈ·±í´ïʵ¼ÊÎÊÌâÖи÷ÖÖÊý¾ÝµÄǰÌᣬÒò´ËÎÒ·ÖÀà×ܽáÁËÒ»ÏÂC/C++/Windows /C#»ù±¾Êý¾ÝÀàÐÍ£¬ÒÔ±ãÈÕºó²éÔÄ¡£
         ANSI C/C++»ù±¾Êý¾ÝÀàÐÍ£º
Type
Size
Ê ......

CÏÝÚ壺ÅжϺêÊÇ·ñµÈÓÚÒ»¸ö³£Êý

ÏÂÃæÕâ¶Î´úÂëÓÐɶ´íÎó£¿
#if ULONG_MAX == 0xFFFFFFFF
inline unsigned long byte_swap(unsigned long x) { return __builtin_bswap32(x); }
inline long byte_swap(long x) { return __builtin_bswap32(x); }
#else
inline unsigned long byte_swap(unsigned long x) { return __builtin_bswap64(x); }
inline long ......

C/C++ ºê´øÀ´µÄÆæ¼¼ÒùÇÉ

×÷ÕߣºKevin Lynx¡¡À´Ô´£ºC++²©¿Í
ת×Ô:http://www.kuqin.com/language/20080319/4797.html
ÖÚ¶àC++Êé¼®¶¼ÖÒ¸æÎÒÃÇCÓïÑÔºêÊÇÍò¶ñÖ®Ê×£¬µ«ÊÂÇé×ܲ»ÈçÎÒÃÇÏëÏóµÄÄÇô»µ£¬¾ÍÈçͬgotoÒ»Ñù¡£ºêÓÐ
Ò»¸öºÜ´óµÄ×÷Ó㬾ÍÊÇ×Ô¶¯ÎªÎÒÃDzúÉú´úÂë¡£Èç¹û˵ģ°å¿ÉÒÔΪÎÒÃDzúÉú¸÷ÖÖÐͱðµÄ´úÂë(ÐͱðÌæ»»)£¬
ÄÇôºêÆäʵ¿ÉÒÔΪÎÒÃÇÔÚ·ûºÅÉÏ ......

C Runtime LibraryÀ´Àú, API, MFC, ATL¹ØÏµ

CRTÔ­ÏÈÊÇÖ¸Microsoft¿ª·¢µÄC Runtime Library£¬ÓÃÓÚ²Ù×÷ϵͳµÄ¿ª·¢¼°ÔËÐС£ºóÀ´ÔÚ´Ë»ù´¡ÉÏ¿ª·¢ÁËC++ Runtime Library£¬ËùÒÔÏÖÔÚCRTÊÇÖ¸Microsoft¿ª·¢µÄC/C++ Runtime Library¡£ÔÚVCµÄCRT/SRCĿ¼Ï£¬¿ÉÒÔ¿´µ½CRTµÄÔ´Â룬²»½öÓÐCµÄ£¬Ò²ÓÐC++µÄ¡£
       CRTÔ­ÏȵÄÄ¿µÄ¾ÍÊÇÖ§³Ö²Ù×÷ϵͳµÄÔËÐ ......

python31ÓëC½»»¥

1.cµ÷ÓÃpython:
   ÊµÀý´úÂ룺
main.cµ÷ÓÃtest.pyµÄ
//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
//main.c
#include <windows.h>
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ