Objective-C [ObjC part:8.1]; [転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2014/11/01(土) 13:35:17.70ID:12FSUUrY
Objective-C(オブジェクティブ シー)はプログラミング言語の一種。C言語をベースにSmalltalk型のオブジェクト指向機能を持たせた上位互換言語。
 (Wikipedia:http://ja.wikipedia.org/wiki/Objective-C より)

前スレ
Objective-C [ObjC part:8];
http://peace.2ch.net/test/read.cgi/tech/1356341803/

Objective-C [ObjC part:7];
http://toro.2ch.net/test/read.cgi/tech/1330330906/
Objective-C [ObjC part:6];
http://toro.2ch.net/test/read.cgi/tech/1313891268/
Objective-C [ObjC part:5];
http://hibari.2ch.net/test/read.cgi/tech/1279730299/
Objective-C [ObjC part:4];
http://pc12.2ch.net/test/read.cgi/tech/1239721860/
Objective-C [ObjC part:3];
ttp://pc12.2ch.net/test/read.cgi/tech/1186543111/
Objective-C
ttp://pc11.2ch.net/test/read.cgi/tech/1106983092/
Objective-C
ttp://pc5.2ch.net/tech/kako/990/990574267.html
2016/03/02(水) 11:33:42.75ID:6RTODWst
initWith と 変数宣言って何が違うの?
2016/03/03(木) 07:33:32.75ID:v0X4WZo1
変数宣言は単に箱用意するだけじゃないの
2016/03/03(木) 11:22:52.73ID:sxVc5uct
initWithは?
2016/03/03(木) 11:34:11.40ID:LQKVhEqg
インスタンスメソッドだ。
2016/03/03(木) 13:58:32.20ID:jykHRqX5
// Swift
let s = self.window!.rootViewController as! UISplitViewController
let n = s.viewControllers[s.viewControllers.count-1] as! UINavigationController
n.topViewController!.navigationItem.leftBarButtonItem = s.displayModeButtonItem()


// Objective-C
id s = self.window.rootViewController;
id n = [s viewControllers][[s viewControllers].count-1];
[n topViewController].navigationItem.leftBarButtonItem = s.displayModeButtonItem;
2016/03/03(木) 15:01:47.17ID:LQKVhEqg
s, nはid型だから、メソッド呼ぼうにもXcodeに注意されるぞ。
2016/03/03(木) 17:29:19.39ID:NI2A9sOU
>>389
C言語の文法レベルで変数を宣言してるか
フレームワークレベルでクラスに命令して作らせてるかじゃね?

銀行に借金頼みに行くのと
かーちゃんに「金貸して」では
前者が厳格で融通が利かないけど細かい問題が少ないのに対して
後者が融通が利いて楽だけど相互の了解で成り立ってる的な。
2016/03/04(金) 07:50:35.47ID:A7nrOp7k
>>393
そのObjective-Cの2行目のメッセージ式が連続してるのって
どういう意味?
そんな書き方許されるんだっけ
(メッセージ式のネストのこと言ってるんじゃないからね)
2016/03/04(金) 12:15:52.50ID:ws81OHPW
>>396
配列の添え字アクセス。
int index = [s viewControllers].count-1;
id n = [s viewControllers][index];
2016/03/04(金) 12:39:05.31ID:JDwO95i7
UISplitViewController *s = …
UINavigationController *n = …

こう宣言しないとだめだよ。
2016/03/05(土) 00:53:47.62ID:Y+yze1Qk
>>397
いやだとしてもおかしいでしょ
配列の添字をメッセージ式の戻り値にするならかならずブラケットが二重になるはず
2016/03/05(土) 01:23:19.93ID:y3HtH6T+
>>399
???
2016/03/05(土) 01:32:10.69ID:Y+yze1Qk
>>400
えっ?もしかして[s viewControllers]の戻り値が配列だとして、
[s viewControllers]を配列名として記述できるってこと?
2016/03/05(土) 01:34:19.82ID:Y+yze1Qk
だとすると、例えばC言語でも、
hoge()の戻り値が配列(ポインタ)だとして、
hoge()[index]とかやったら添え字アクセスできちゃうわけ?
今手元に環境がないから試せないんだけど
2016/03/05(土) 01:35:06.51ID:Y+yze1Qk
やるとしたら
(hoge())[index]
か?
できたとしてもこんな変態的な表現見たことない…
2016/03/05(土) 01:35:30.03ID:5URH9rpB
>>401
[s viewControllers] は NSArray*返すんだからあってるじゃん
2016/03/05(土) 01:36:18.69ID:zjxr8oeE
UISplitViewController *s = (UISplitViewController *)(self.window.rootViewController);
UINavigationController *n = (UINavigationController *)(s.viewControllers[s.viewControllers.count - 1]);
n.topViewController.navigationItem.leftBarButtonItem = s.displayModeButtonItem;

こうだな
2016/03/05(土) 01:38:21.94ID:5URH9rpB
NSArray* array=[s viewControllers];
って時に
array[index] は [array objectAtIndex:index]になるんよ
コンパイラの方で補間してくれてる。
同じように
NSDictionary* dic;にたいして
dic[@"key"] は [dic objectForKey:@"key"]って読み替えしてくれるよ
2016/03/05(土) 01:40:23.17ID:zjxr8oeE
UISplitViewController *s = (UISplitViewController *)([[self window] rootViewController]);
UINavigationController *n = (UINavigationController *)([[s viewControllers] objectAtIndex:[[s viewControllers] count] - 1]);
[[[n topViewController] navigationItem] setLeftBarButtonItem:[s displayModeButtonItem]];

古い書き方したらこうか
2016/03/05(土) 01:41:05.38ID:Y+yze1Qk
>>406
うん、そこまではわかる
メッセージ式の引数をダイレクトに配列変数名として[]による要素アクセス
しちゃうなんていうアクロバティックな表現見たことなくてさ
2016/03/05(土) 01:43:00.37ID:Y+yze1Qk
まあ、わかるとは言ったけど、>>406も驚きだわ
今のコンパイラはそのレベルまで補完してくれるんだね…
バグの原因になりそうだけど
2016/03/05(土) 01:46:11.56ID:zjxr8oeE
ていうかこのサンプルコード?
self.windowってことは、UIViewのサブクラスの中から
UINavigationControllerのleftBarButtonItem変更してるんか
かなり糞コードな気が
2016/03/05(土) 01:50:46.16ID:Y+yze1Qk
>>393
つーか、メッセージ式の戻り値でダイレクトに後置[]で要素アクセスしちゃうのもアレだけど、
Objective-Cにおいてオブジェクトのメンバーをドットで直接参照するなんてのも
書き方としてあり得るの?
2016/03/05(土) 01:52:24.95ID:Y+yze1Qk
しかも、仮に強いて直接参照するとしても演算子は->じゃない?
謎が多すぎる
2016/03/05(土) 01:56:08.96ID:zjxr8oeE
ドットはメンバーにアクセスしてるんじゃなくてプロパティのシンタックスシュガー
配列辞書の[]は最近だけどドット記法はだいぶ前からある


[o hoge] は o.hoge
[o setHoge:h] は o.hoge = h
と書ける

->とは全然別物
2016/03/05(土) 02:05:55.05ID:Y+yze1Qk
>>413
マジか…
Objective-Cらしからぬ表現が今のコンパイラでは可能なのね
ちょっと衝撃だわ
Cocoaプログラミングしばらくやってなかったツケが回ってきてるわw
2016/03/05(土) 02:13:33.21ID:Y+yze1Qk
思い出してきたが、@propertyってちょうどやらなくなったくらいで出てきた気がする
だいぶ昔だよね確かにorz
2016/03/05(土) 02:28:25.53ID:Y+yze1Qk
やっぱAppleがObjective-Cを収束する方針なのは残念だわ
(Swiftが軌道に乗るのかは微妙だけど)

世界初のWebブラウザもObjective-Cで書かれたんだよね
https://www.w3.org/History/1991-WWW-NeXT/Implementation/
2016/03/05(土) 02:30:28.15ID:jb1F0oyu
それはかなり前からやってないことにならないか?
今はジェネリクスとかNonNullableとかあるで。
2016/03/05(土) 02:33:47.98ID:y3HtH6T+
かなり古いところで知識が止まってる人やったんやな。
2016/03/05(土) 02:47:18.67ID:Y+yze1Qk
>>417
やばい、またCocoaプログラミングやりたくなって来た
今からまたObjective-C勉強しなおしても無駄にはならないかな

>>418
はい、勉強します。。。
2016/03/05(土) 02:54:21.39ID:5URH9rpB
>>419
つか今時のObjective-cめちゃ楽しいよ
swiftの方が記述がキモイ(あそこまでやるならML系まっしぐらにして欲しい)ので俺はイヤだわ
2016/03/05(土) 02:54:51.89ID:y3HtH6T+
>>5
> Objective-C Literals ― Clang 3.9 documentation
> http://clang.llvm.org/docs/ObjectiveCLiterals.html

今の Obj-C はいろいろなリテラルが導入されてるんやで。
2016/03/05(土) 03:00:27.20ID:Y+yze1Qk
>>420
>>421
真夜中なのに久々にワクワクしてきたw
いろいろ漁ってたら前に買った詳解Objective-C2.0が出てきた
2008年6月1日初版第1刷って書いてある。。
でもまずは基礎をちゃんとやり直さないと今時のObjective-Cも楽しめないよね
がんばろ
ありがとう!
2016/03/05(土) 03:29:49.20ID:Y+yze1Qk
>>421
NSNumberのリテラルはさすがに最近の話ですよね
自分の無知を痛感してきた
これって内部実装はマクロ的に組まれてて数値の範囲はLongLongやDoubleまで
あらゆる数値が可能なのかな
それともコンパイラがやってくれてるんですかね
2016/03/05(土) 03:49:29.29ID:y3HtH6T+
NSNumber リテラルは2012年の Clang 3.1 からあるで。
2016/03/05(土) 04:09:14.03ID:Y+yze1Qk
そうですか…
もはやブランクというレベルじゃない気がしてきましたね
ノリノリでやってた時って、まだProject BuilderとInterface Builderの時代だったし…
でもやっぱり楽しいですねObjective-Cって
2016/03/05(土) 08:30:43.19ID:xdiHToCv
(おれ、1990年代頭にK&RでC学んだから、ずっとポインタは整数型だと思ってて
いつのまにかポインタ型ってのになってるの2010年ごろまで知らんかったでw)
2016/03/05(土) 09:33:32.85ID:C6PXQEiT
Objective-Cはここ数年で劇的に変わったからな。
といかお前ら絶対Objective-C 2.0とか知らないだろ。

2010年:Objective-C 最速基礎文法マスター
http://d.hatena.ne.jp/fn7/20100203/1265207098
2015年:Objective-C 2.0 基礎文法最速マスター
http://marycore.jp/prog/objective-c/basic-syntax/
2016/03/05(土) 09:40:03.49ID:y3HtH6T+
Obj-C 2.0 なんて 9 年前の言葉持ち出してきてどうした
2016/03/05(土) 09:57:04.10ID:C6PXQEiT
たしかにObjective-C 2.0以前にXcode側の対応が充実したって言ったほうがいいかもな。
あとマイナーアップデートもちょくちょくあった気がする。
@implementation側でインスタンス変数宣言出来るようになったし
ジェネリックスも最近入ってきた。
2016/03/05(土) 10:02:21.11ID:xdiHToCv
>>427
上でも出てるが詳解Objective-C2.0(萩原本)は2008年やで。
俺もcocoaやろうと買ってて、それを2009年のiPhone開発解禁で
本格的に読み始めたから、基本的にiOSやってるやつはみんな2.0からやで。
2016/03/05(土) 11:55:02.65ID:UYtB00OI
Objective-Cじゃダメな理由って何なのそれ?
2016/03/05(土) 12:29:52.33ID:jb1F0oyu
>>416
あと2.0?になってからpublicとかprivateキーワードも使わなくなったよね。

ヘッダファイル記載したプロパティはpublic
.m側にカテゴリとして記載したプロパティがprivateみたいな方針が標準になった

syhthsizeとかも直接使わなくなってプロバティを宣言すると裏で勝手に
_変数 がつくられてsetterとgetterが自動生成されるとか
暗黙的なことがごちゃごちゃ増えたね。
後から入った人にはマジカルすぎるかもしれない
2016/03/05(土) 13:18:46.27ID:Y+yze1Qk
少しずつ読み進めてますが、Objective-Cらしくない感じがしちゃうけど@propertyは便利ですね

ただ、
@public
@private
@protected
はわかりやすかった気がするけど、ヘッダファイルにprivateメンバの情報を
載せないで済むようにしたかったってことなのかな
2016/03/05(土) 14:18:12.35ID:mFk1f1pP
ヘッダに書くのはパブリックメソッドのみ。これが合理的で非常にわかりやすい。
もっともOOPに適した言語だと思う。
2016/03/05(土) 14:35:34.86ID:HF+l0CAH
ここはいつから日記帳になったんだ
2016/03/05(土) 18:16:16.08ID:jb1F0oyu
>>435
確かにヘッダ見ればそのライブラリのオープンなメソッドしか見えない
というのはわかりやすい。
2016/03/06(日) 00:41:20.28ID:5qJ91+Ie
>>427
NeXTのOpticalDrive版もってましたがなにか?
2016/03/06(日) 11:35:02.88ID:g15wMUfE
>>427
2010年の割には随分古い書き方だな。
Objective-C使ったこと無いのにやたらObjective-C叩く奴らはそのページの知識で止まってたりしてな。
2016/03/10(木) 14:37:18.03ID:OLUNjZSr
うちは未だに[NSArray arrayWithObjects:@"", nil]とか[NSNumber initWithInteger:0]使ってるコードあるけどな。
テストが面倒なのでTo Modern Objective-C Syntax...機能は使わないという方針なんだよ。
ウォーターフォール型でモバイルアプリ開発始めるとこうなる。
2016/03/10(木) 17:40:00.03ID:yfQIYaI+
なんでテストが面倒なの?
2016/03/11(金) 16:33:44.79ID:kWA4jyXp
日本のウォーターフォール開発にはエビデンスというものがあってだな。
とりあえず責任のなすりつけあいをするために大掛かりな改修が入ると1からテストし直す所は多いよ
2016/03/17(木) 01:04:45.68ID:7hhawqio
> To Modern Objective-C Syntax...機能
ああXcodeの一括置換機能か
意味がわかった
2016/04/06(水) 03:45:31.16ID:HJm2wRVw
NSMatrixでハマってしまいました、お知恵をお貸しください。
NSMatrixで複数選択した時の選択されている箇所を調べる方法なんですが
NSMatrixのアクションを以下のようにしてみたのですがオン時はうまく行きますがオフ時にNSCellのstateが変わらずオンの値のままになってしまいます。
オフにしてから他のcellの値を変えると適用された値になります。
原因分かりますか?
- (IBAction)choiceMatrix:(NSMatrix *)sender {
 BOOL c1, c2, c3, c4;
 for (NSCell *cell in [sender cells]) {
   switch ([cell tag]) {
    case 0:
     c1=[cell state];
     break;
    case 1:
     c2=[cell state];
     break;
〜〜〜〜〜〜〜〜
    default:
     break;
   }
 }
 NSLog(@"[%d, %d, %d, %d]",c1, c2, c3, c4);
}
444デフォルトの名無しさん
垢版 |
2016/05/01(日) 14:30:22.53ID:tKi6j9CT
匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています

言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?

Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al

ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw


The Covenant Project
概要

Covenantは、純粋P2Pのファイル共有ソフトです

目的

インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します

特徴

Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)

接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
2016/05/21(土) 21:08:51.89ID:oKW2aYRF
iosって標準で何かデータベース使えるの?
androidはsqliteが使えるけど
2016/05/21(土) 22:23:35.91ID:CpbYB6Dd
sqlite入ってますよ
2016/05/22(日) 01:54:16.39ID:gQDMaR5e
ありがとうございます!
2016/05/23(月) 11:26:40.41ID:VJZJx6HE
安心してください
2016/07/10(日) 10:00:08.73ID:mg7VERF+
オーバーライドの意味がわかりません
スーパークラス
メソッドA
サブクラス
メソッドA
サブクラスのメソッドAをオーバーライドします
スーパースラスは、どうやって使うの?
2016/07/10(日) 11:33:19.16ID:BZS6mtB9
[super メソッドA];
2016/08/08(月) 14:05:28.43ID:hWjiE75J
__strong
__weak
__unsafe_unretained
__autoreleasing
Obj-C2.0で、これ使いますか?
2016/08/09(火) 02:55:35.50ID:MqKY0R2e
使う事もあるよ
2016/08/10(水) 14:13:19.69ID:5T/jHI7m
カテゴリって、戻り値しかない関数って思えばいいの?
2016/08/10(水) 17:39:43.18ID:62x+4tTI
凄い。全然違う。いわゆる trait
2016/09/16(金) 11:26:49.35ID:L/lkPp6y
継承って、C言語の標準関数って思っていいの?
2016/09/16(金) 11:32:41.83ID:uFIaMsTW
すまん言いたいことの意味がわからない
2016/09/16(金) 11:59:46.56ID:Uoij9LZq
クラスの場合はサブクラス化のこと。多重継承はできない。
プロトコルの場合は多重継承できる。
2016/09/18(日) 16:19:24.88ID:9KaldL8I
>>454
トレイトっていわゆるカテゴリだよね
カテゴリって何?
2016/09/18(日) 16:21:49.97ID:V608H0Yq
つまんね
2016/09/18(日) 16:22:34.65ID:+iC0HZAY
おつおつ
2016/09/19(月) 06:53:12.40ID:ze/R6ozd
>>438とか言ってるからどれ程に有識かと思ったら
バズワードでしかObjCの機能を説明できない奴らばかりかよ、、、
2016/09/19(月) 08:04:00.68ID:W9V/RaHi
まじでカテゴリとは何かってことか?
既存のクラスに宣言(.h)と実装(.m)を追加するObj-Cのミラクル機能だよ。
例えばNSArrayにobjectAtIndexSafety:を追加する。

oreore.h
@interface NSArray (oreore)
- (id) objectAtIndexSafety:(NSUInteger)index;
@end

oreore.m
@implementation NSArray(oreore)
- (id) objectAtIndexSafety:(NSUInteger)index
{
 if (index < [self count]) {
  return [self objectAtIndex:index];
 }
 return nil;
}
@end
2016/09/19(月) 17:58:43.86ID:gQRJTUbC
javaスレでメソッドってなに?って聞いてるようなもんだから
みんな釣りとしてスルーしてた。
2016/09/19(月) 18:02:17.52ID:VA/o11o6
Objective-CがsmalltalkとCのハイブリッドなので
僕はカテゴリとかの単語の意味含めてメソッド呼び出しの仕組みとかを理解しやすくするにはsmalltalkを体験すべきだと思うのだけどどう?
2016/09/19(月) 22:24:00.74ID:KnX9vMV5
>>464
んー、SmalltalkはObj-Cの [ ] の中身だけでコードを全て記述するような感じの言語で、動的性を学ぶのにいいので
「Smalltalkを体験すべき」っていうのには大筋では賛成。こちら↓はその際の参考まで。

▼Smalltalkをちょっとかじってみたい人のための、チュートリアルまとめ
http://qiita.com/sumim/items/6bed17961bd57daf88a3

でもカテゴリはSmalltalkでは対応するのはトレイトだし、Smalltalkでカテゴリはプロトコルの意味でも使われたり
そのプロトコルもObj-Cのプロトコルとは(名前の由来にはなっているけれど)別物だったりと食い違いもあり
「メソッド呼び出しの仕組み」はともかく、こと「単語(用語)の意味」を知る目的では必ずしもお薦めできない。
2016/09/20(火) 09:47:32.51ID:noK0zumc
似てるってだけでハイブリッド(キリっ)とか
頭湧いてんな
2016/09/20(火) 21:20:03.95ID:cQ8uMGBS
ObjcのハイブリッドはSmalltailkのコンセプトとC言語の処理系のハイブリッドのことだと思うんだけど
そういう意味ならSmalltalkの思想やコンセプトを理解する価値はある気がする。

でもObjcはそんなに難しい言語でもないしそこまでする必要は無い気もする。
2016/09/21(水) 15:26:58.49ID:S1SFikQD
objcらしさはトレンドが早いから今更Smalltalkはどうなのよ
原典の一つではあろうがobjcで学ぶべきじゃね
2016/09/25(日) 19:25:14.70ID:+js0BgEk
いつの間にか NSArray<NSString *> *names; みたいな記法が可能に。
2016/09/25(日) 19:39:59.75ID:sZGCwOzX
ジェネリクスは去年からだろ
今年はクラス変数(Type Property)が追加された
471デフォルトの名無しさん
垢版 |
2016/10/06(木) 22:17:15.09ID:Ppn//x8R
すいません、objective-c触れたばっかで全然勝手が分からないんですが、

void play_sound(NSString* str)
{
  NSSound* sound = [NSSound soundNamed : str];
  [sound play];
}
int main()
{
  play_sound(@
472デフォルトの名無しさん
垢版 |
2016/10/06(木) 22:19:20.70ID:Ppn//x8R
なんか途切れちゃってる...
int main()
{
play_sound(@"ファイル名.mp3");
}
>>471
soundは[sound release];は必要なんでしょうか?
2016/10/07(金) 00:37:46.25ID:yL88npXy
2chのバグだろ

書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。
" を、\" とエスケープすれば、どうだろう?
2016/10/07(金) 00:40:22.25ID:X6DZ7p2C
普通&quot;に実体参照でエスケープして書き込むだろ
2016/10/07(金) 00:46:39.49ID:X6DZ7p2C
>>471
ちなみにクラスメソッドはコンビニエンスコンストラクタだからreleaseはいらない
poolブロックで開放すると良い
soundの場合再生終了時にね
2016/10/07(金) 00:48:31.69ID:A3oY7q9i
test1
2016/10/07(金) 00:49:01.66ID:A3oY7q9i
>>473
> 書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。

ホントだ。信じられん……
478デフォルトの名無しさん
垢版 |
2016/10/07(金) 00:55:53.92ID:UYUTVtAf
>>475

回答あざっす

pool処理ってこんな感じでいいんでしょうか?

NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
/--------ここに処理を記述---------/
[pool release];
2016/10/07(金) 00:58:48.10ID:X6DZ7p2C
>>478
@autoreleasepool{
}
でいいよ
てかsoundならallocでイニシャライズして好きなタイミングでリリースした方がいいんじゃない
以前のOSではNSSoundのautorelease不具合あったし
480デフォルトの名無しさん
垢版 |
2016/10/07(金) 01:04:41.28ID:UYUTVtAf
>>479
すいません マジ初心者なんでallocでイニシャライズする部分を具体的に書いてもらえると助かります
objective-c触れたばっかなんで
お手数かけてすみません
481デフォルトの名無しさん
垢版 |
2016/10/07(金) 01:11:24.99ID:UYUTVtAf
openglいじってて、サウンドもつけたくなり
でもそれだとCocoaFramework必要になって
ほんとはcで済ませたかったんですが、objective-cじゃないとCocoa使えないからということで
ほんとに無知ですんません
2016/10/07(金) 01:19:10.67ID:X6DZ7p2C
>>480
NSSoundDelegateで再生終了時のdidFinishPlayingを拾ってリリーすれば良いんじゃない
-(void)playSE{
  NSString*path= @"音パス";
  NSSound *se = [[NSSound alloc] initWithContentsOfFile:path byReference:YES];
  [se setDelegate:self];
  [se play];
}
-(void)sound:(NSSound *)sound didFinishPlaying:(BOOL)aBool{
[sound release];
}
483デフォルトの名無しさん
垢版 |
2016/10/07(金) 01:20:54.04ID:UYUTVtAf
>>482
凄く分かりやすいです!本当にありがとうございます
2016/10/07(金) 01:22:54.60ID:X6DZ7p2C
ゲームかなんか?
それならエフェクト追加とかミキサーで多重再生とかしたくなるだろうから
AudioUnitでやると便利だよ
485デフォルトの名無しさん
垢版 |
2016/10/07(金) 01:29:40.94ID:UYUTVtAf
>>484
ゲームってわけじゃないんですが
一応ゲーム作るなら情報豊富なdxlib使おうかと思いますし・・・
ほんとに軽くSEほしいなぐらいなんで
でも一応検討します
回答わかりやすかったです 
何回も言ってますけどw本当にありがとうございます
2016/10/07(金) 01:33:04.00ID:X6DZ7p2C
そこはdirectXなのかよwww
ドザーなのか
487デフォルトの名無しさん
垢版 |
2016/10/07(金) 01:35:22.75ID:UYUTVtAf
>>486
windows故障してしばらくosx使ってます
使いたおしたらまたwindows戻ろうかなって(小声
488デフォルトの名無しさん
垢版 |
2016/10/07(金) 01:38:54.58ID:UYUTVtAf
iOSだと大量のリファレンスそれも日本語の(英語でも一応なんとかなりますけど・・・
があるのにOSXのほうはなかなか見つけるのが難しくて苦労してます(探し方わるいのかもしれんけど)
489デフォルトの名無しさん
垢版 |
2016/10/12(水) 21:41:24.49ID:fMOTdRji
クラスを配列で作りたいんだけどこれって大丈夫?
@interface myclass : NSObject{
  int kazu;
}
  -(void)set : (int) i;
  -(void)print;
@end
@implementation myclass
  -(void)set : (int) i
  {
    self->kazu = i;
  }
  -(void)print
  {
    printf(”%d\n”, kazu);
  }
@end
int main()
{
  @autoreleasepool
  {
    myclass* obj[3];
    for(int i=0; i<3; ++i)
      obj[i] = [ [myclass alloc]init ];
    for(int i=0; i<3; ++i)
      [obj[i]set : i*10];
    for(int i=0; i<3; ++i)
      [obj[i]print];
  }
  return 0;
}
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況