{"id":2258,"date":"2011-07-05T19:54:34","date_gmt":"2011-07-05T10:54:34","guid":{"rendered":"http:\/\/www.moonmile.net\/blog\/?p=2258"},"modified":"2011-07-05T19:54:34","modified_gmt":"2011-07-05T10:54:34","slug":"clangllvm-%e3%81%a7-objc-%e3%82%92-datatable-%e3%81%a3%e3%81%bd%e3%81%8f%e6%89%b1%e3%81%86","status":"publish","type":"post","link":"http:\/\/www.moonmile.net\/blog\/archives\/2258","title":{"rendered":"clang+llvm \u3067 objc \u3092 DataTable \u3063\u307d\u304f\u6271\u3046"},"content":{"rendered":"<p>\u3046\u308c\u3057\u3052\u306b\u3001@property \u3067 DataRow \u3092\u4f5c\u3063\u3066\u898b\u305f\u4f8b\u3002<br \/>\n\u3082\u3046\u3061\u3087\u3063\u3068\u6574\u7406\u3057\u306a\u3044\u3068\u3002<\/p>\n<pre class=\"brush: objc; title: ; notranslate\" title=\"\">\r\n\/*\r\nclang -o main4 main4.m -I \/llvm\/include -I \/GNUstep\/GNUstep\/System\/Library\/Headers -L c:\/GNUstep\/GNUstep\/System\/Library\/Libraries -lobjc -lgnustep-base -fconstant-string-class=NSConstantString -Wno-format-security\r\n*\/\r\n#import &lt;stdio.h&gt;\r\n#import &lt;Foundation\/Foundation.h&gt;\r\n#import &lt;Foundation\/NSObject.h&gt;\r\n\r\n@interface Person : NSMutableDictionary\r\n{\r\n\t@private\r\n\tint _id ;\r\n\tNSString *_name;\r\n\tint _age ;\r\n}\r\n@property (nonatomic) int id ;\r\n@property (nonatomic,retain) NSString *name;\r\n@property (nonatomic) int age ;\r\n@end\r\n\r\n@implementation Person\r\n@synthesize id = _id ;\r\n@synthesize name = _name ;\r\n@synthesize age = _age ;\r\n- (void)print \r\n{\r\n\tNSLog(@&amp;quot;%d %@(%d)&amp;quot;, _id, _name, _age );\r\n}\r\n- (Person*)initWithId:(int)id Name:(NSString*)name Age:(int)age \r\n{\r\n\t_id = id;\r\n\t_name = name;\r\n\t_age = age;\r\n\t\r\n\treturn self;\r\n}\r\n@end\r\n\r\n@interface Persons : NSObject\r\n{\r\n\t@private \r\n\tNSMutableArray *_rows ;\r\n}\r\n@property (nonatomic,retain) NSMutableArray *rows ;\r\n@end\r\n\r\n@implementation Persons\r\n@synthesize rows = _rows;\r\n\r\n- (id)init\r\n{\r\n\t&#x5B;super init];\r\n\t_rows = &#x5B;&#x5B;NSMutableArray alloc] init];\r\n\treturn self;\r\n}\r\n- (void)print \r\n{\r\n\tfor ( int i=0; i&lt; &#x5B;_rows count]; i++ ) {\r\n\t\tPerson *p = &#x5B;_rows objectAtIndex:i];\r\n\t\t&#x5B;p print];\r\n\t}\r\n}\r\n\r\n@end\r\n\r\n\r\n\r\nint _main(int argc, char *argv&#x5B;])\r\n{\r\n\tPerson *masuda = &#x5B;&#x5B;Person alloc] initWithId:1 Name:@&amp;quot;masuda&amp;quot; Age:40];\r\n\tPerson *yamada = &#x5B;&#x5B;Person alloc] initWithId:2 Name:@&amp;quot;yamada&amp;quot; Age:50];\r\n\tPerson *tanaka = &#x5B;&#x5B;Person alloc] initWithId:3 Name:@&amp;quot;tanaka&amp;quot; Age:20];\r\n\tPersons *persons = &#x5B;&#x5B;Persons alloc] init];\r\n\t&#x5B;persons.rows addObject:masuda];\r\n\t&#x5B;persons.rows addObject:yamada];\r\n\t&#x5B;persons.rows addObject:tanaka];\r\n\t&#x5B;persons print];\r\n\t\r\n\treturn 0;\r\n}\r\n\r\nint main(int argc, char *argv&#x5B;])\r\n{\r\n    NSAutoreleasePool *pool = &#x5B;&#x5B;NSAutoreleasePool alloc] init];\r\n    int retVal = _main(argc, argv);\r\n    &#x5B;pool release];\r\n    return retVal;\r\n}\r\n\r\n\r\n\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u3046\u308c\u3057\u3052\u306b\u3001@property \u3067 DataRow \u3092\u4f5c\u3063\u3066\u898b\u305f\u4f8b\u3002 \u3082\u3046\u3061\u3087\u3063\u3068\u6574\u7406\u3057\u306a\u3044\u3068\u3002 \/* clang -o main4 main4.m -I \/llvm\/include -I \/GNUstep\/GNUste &hellip; <a href=\"http:\/\/www.moonmile.net\/blog\/archives\/2258\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":2742,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3,28],"tags":[],"class_list":["post-2258","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev","category-objc"],"jetpack_featured_media_url":"http:\/\/www.moonmile.net\/blog\/wp-content\/uploads\/2012\/01\/windows-objective-c-title.jpg","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts\/2258","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/comments?post=2258"}],"version-history":[{"count":1,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts\/2258\/revisions"}],"predecessor-version":[{"id":2259,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/posts\/2258\/revisions\/2259"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/media\/2742"}],"wp:attachment":[{"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/media?parent=2258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/categories?post=2258"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.moonmile.net\/blog\/wp-json\/wp\/v2\/tags?post=2258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}