[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 10/07 16:29 / Filesize : 229 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Objective-C



1 名前:デフォルトの名無しさん mailto:sage [05/01/29 16:18:12 ]
ほんとプログラマにとってはMacって
本当に興味が無いOSだよねw

Macでの標準的な言語であるObjective Cのスレすら無いし。
過去にはあったんだろうけど。

641 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 12:33:30 ]
www.cocoadev.com/index.pl?ObjC
腐敗臭がする。

642 名前:デフォルトの名無しさん [2006/08/15(火) 13:56:53 ]
>>637
つけあがらないようにつっ込んでおくが、Undoの仕組みはかなり前に導入されたぞ。
Cocoaのクラス一覧を良く眺めてミロ。

643 名前:デフォルトの名無しさん mailto:sage [2006/08/15(火) 17:00:00 ]
Namescape

644 名前:デフォルトの名無しさん [2006/08/18(金) 03:39:01 ]
>>642
あんなもの使えん。おまえ、本当にアプリつくっているの?


645 名前:デフォルトの名無しさん mailto:sage [2006/08/19(土) 07:35:44 ]
>>644
俺はそれを使った事ないんだが、どうダメなのか簡単に。

646 名前:デフォルトの名無しさん [2006/08/28(月) 10:44:52 ]
誰かObjective-C 2.0の情報をまとめて下さい。

647 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 11:12:04 ]
OSにつかわれてこそのプログラミング言語

648 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 04:10:16 ]
OS って Kernel の事を指してる?

649 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 14:46:03 ]
OSといってんだからOSだろ



650 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 17:33:49 ]
Kernelの記述に使われてる言語ならほとんどはC言語とアセンブラかな。
ごく一部でC++もあるらしいけど。


651 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 17:57:10 ]
macosx は、objc でかいてあるの?

652 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 20:59:31 ]
objcがmacosxでかかれているよ

653 名前:デフォルトの名無しさん mailto:sage [2006/08/30(水) 16:53:35 ]
>>649
そうだとすると Objective-C も使われてる事になるね。
あとは Perl, Python, Java 辺りも。

Kernel だけなら、C, C++, ASM, m4 くらいかな。

654 名前:デフォルトの名無しさん mailto:sage [2006/08/30(水) 18:40:16 ]
Perl,Pythonって、どのOSにつかってるのか?

655 名前:デフォルトの名無しさん mailto:sage [2006/08/30(水) 23:28:12 ]
あ、sh を忘れてた。

656 名前:デフォルトの名無しさん mailto:sage [2006/09/03(日) 03:40:41 ]
>>645
YouOSあたりじゃない?

657 名前:デフォルトの名無しさん mailto:sage [2006/09/04(月) 11:01:17 ]
GNUstepをインストールしてみたんだけどObjective-C(・∀・)イイ!ね、
FoundationKitのソースをざっと眺めてみたんだけど読みやすくて何をしてるかすぐ分かって最高。
美しいって素晴らしい。

658 名前:デフォルトの名無しさん [2006/09/06(水) 23:55:16 ]
>>12
[>>1 autorelease];
で勘弁してあげて。

659 名前:デフォルトの名無しさん mailto:age [2006/09/07(木) 00:30:20 ]
[self age];



660 名前:デフォルトの名無しさん [2006/09/07(木) 09:02:47 ]
Messageの一個目のパラメータに名前付けらんないのって
なんのいやがらせですか?

661 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 10:39:15 ]
いや。それって、アンタの理解が間違っているだけですから……。

662 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 14:08:01 ]
今日の議題
* メソッド名の一部をパラメータの名前だと勘違いしている件について

663 名前:デフォルトの名無しさん mailto:sage [2006/09/07(木) 16:00:18 ]
Objective-C の [ ] の中の文法(つまるところ Smalltalk の文法なんだけど…)は、原則として、

 receiver message

というように、メッセージを受け取るオブジェクト(receiver)と、それに送るメッセージ
(message)をスペースなどで区切って記述する。

さらに、メッセージは、セレクタと0個以上のパラメータ(引数)で構成される。

セレクタはパラメータの数だけ : (コロン)を含み、メッセージとして記述する際には、
それぞれのコロンの後にパラメータ+スペースを挿入する特殊な記法をとる。たとえば、

 receiver foo:arg1 bar:arg2

なら、メッセージは「foo:arg1 bar:arg2」、セレクタは「foo:bar:」。

コロンをひとつでも含むときは、セレクタは、かならずコロンで終わらせなければいけない。
換言すると、パラメータがあるときは、メッセージは必ずパラメータで終わる。したがって、
「foo:bar:baz」のようなセレクタや、それを含んだメッセージ(foo:arg1 bar:arg2 baz)は
使用できない。

なお、セレクタは、メッセージ送信の結果、起動することが期待されるメソッドの名前でもある
(両者は一致する)。

また、foo や bar を「キーワード」と呼ぶことがあるが、これはあくまで便宜的なもので、
言語仕様上、そうしたエンティティがあるわけではない(それらは結局、セレクタ、あるいは、
メソッド名の一部に過ぎない)。

664 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 11:45:28 ]
Cocoaセミナーのムービーに中級編追加
developer.apple.com/jp/documentation/japanese.html#CocoaSeminar1

665 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 18:07:49 ]
Objective-CでネイティブなWindowsアプリって作れる?

666 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 21:18:17 ]
作ろうと思えば作れる

667 名前:デフォルトの名無しさん mailto:sage [2006/09/08(金) 21:53:26 ]
>>665 そのネイティブってどういう意味だ? 質問の前にもっと勉強が必要だな。

668 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 00:12:26 ]
ObjCで使いやすいHTMLパーサってある?
別にCとかC++でもいいけど、Javaは嫌。

669 名前:デフォルトの名無しさん mailto:sage [2006/09/09(土) 11:49:38 ]
>>665
StepStone




670 名前:デフォルトの名無しさん mailto:sage [2006/09/10(日) 09:46:15 ]
>>669
StepStone社ってまだあるんか?

671 名前:デフォルトの名無しさん mailto:sage [2006/09/11(月) 20:41:25 ]
[self age];

672 名前:デフォルトの名無しさん [2006/09/11(月) 20:43:22 ]
さげちまった

673 名前:デフォルトの名無しさん mailto:sage [2006/09/15(金) 18:47:44 ]
[self hoshu]

674 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 09:42:36 ]
[self sex:self]

675 名前:デフォルトの名無しさん mailto:sage [2006/09/16(土) 11:08:36 ]
/* おなにーかよ */

676 名前:デフォルトの名無しさん mailto:age [2006/09/19(火) 00:57:05 ]
[self age];

677 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 01:29:36 ]
Objective-C 2.0ではガーベッジコレクションが追加されるのかな〜。
知ってる人いたら教えて。

678 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 02:22:40 ]
Objective-C 2.0

アップルは、魅力あふれる Xcode 3.0自身を使ってXcode 3.0を開発しました。
最新のガベージコレクション、強化された構文と改善されたランタイムパフォーマンス、
64ビットサポートをお届けします。
既存の Objective-Cソースとの下位互換性も備えているため、
自分のペースで作業を進めることができます。
Xcode 3.0のObjective-Cを使って、バグを減らしながらすばやくアプリケーションを記述できます。


679 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 18:26:27 ]
プロパティってどうよ?



680 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 19:00:50 ]
もうちょい具体的に

681 名前:デフォルトの名無しさん [2006/09/19(火) 19:48:48 ]
>>679-680
ワロタ

682 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 19:53:31 ]
おそらく、2.0で追加される@propertyコンパイラディレクティブのことでないかと。

683 名前:デフォルトの名無しさん mailto:sage [2006/09/19(火) 20:07:18 ]
 785  Name: 4/7  [sage] Date: 2006/09/12(火) 21:29:33  ID: TiBUhRpI0  Be:
    他にもプロパティに指定できる属性がある。便利なのがivarだ。こいつはプロパティを指定した
    名前のインスタンス変数にマッピングするものだ。

    (コード。プロパティの属性ivarの例)
    @interface Bar : Object
    {
    int iVar;
    }
    @property(ivar = iVar) int FooBar;
    @end

    getterやsetterのメソッドも別に指定することができる

    (コード。プロパティのアクセサメソッドを個々に指定する)
    @property(getter = whatBaby, setter = setFire:) id baby;

684 名前:スマソ、こっちが先だ mailto:sage [2006/09/19(火) 20:08:43 ]
 784  Name: 3/7  [sage] Date: 2006/09/12(火) 21:28:49  ID: TiBUhRpI0  Be:
    【プロパティ】

    これはオレが見つけた中では追加された最大のものだ。こいつはグルーコードを書くために
    費やす時間やコード量を節約してくれる。

    Rubyの属性(attributes)のようにObj-C 2.0ではクラスのプロパティを定義することができる。
    んでもって、プロパティの属性(nocopy, readonly, readwrite. etc)を指定すれば、コンパイラは
    その指定に従ったKVC準拠のアクセサを生成する。もしそうしたければ、アクセサである
    setVar:やvarメソッドをオーバーライドすることもできる。

    (長いのでコード省略。属性無指定のプロパティとreadonlyのプロパティの例、アクセサのオーバーライド)

    で、見りゃわかることはこんなことだ。
    ・プロパティは.(ピリオド)でアクセスできる。かんたんインスタンス変数アクセス(訳注:あとででてくる)は
     ->を使うことをヘンに思うかもしれんが、これはKVCとは関係ないってことで納得しとこう。
    ・デフォルトのプロパティの実装は、文字列みたいなオブジェクトすら"do the right thing"で扱ってる
     ように見える。set時にコピーして、自分自身の解放時にもちゃんと解放するみたいだ。
     少なくともdeallocのテストは見当たらないな。
    ・当たり前だがGroupオブジェクト中のPersonオブジェクトは初期化しなくちゃいけない

685 名前:デフォルトの名無しさん [2006/09/19(火) 23:43:17 ]
せっかくObjective-C本が復刊したのに、また結構豪快なverupだなorz

686 名前:デフォルトの名無しさん [2006/09/19(火) 23:49:08 ]
このスレを見つけて、Objective-Cっていったい何なのさ。きいたこともないんだけど。って思った方、ぜひ以下のリンクをご覧下さい。
私が書いた訳ではありませんが、丁寧に書かれているので紹介します。
wisdom.sakura.ne.jp/programming/objc/index.html
Objective-Cは名前からもわかるとおりオブジェクト指向言語です。
C系オブジェクト指向言語では、超メージャーな言語にC++があります。
Objective-CとC++の二つを見たとき、C言語に近そうなのは名前からもC++な気がしますが、実際にはObjective-CがよりC言語に近いです。
というよりはObjective-C=C言語+オブジェクト指向です。
そのため、Objective-CではC言語のソースがそのまま使えます。無駄になりません。
Objective-Cは現在、Mac OS Xの開発環境での主力言語ですが、決してMac OS X専用の言語ではありません。gccコンパイラでコンパイルできますから、gccがある環境をお持ちでしたらどこでも利用可能です。
興味のある方はぜひご一読くださいな。

687 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 00:17:08 ]
onewayってメソッドの返り値を待たずに先々進んでいく、って認識でおk?

688 名前:デフォルトの名無しさん [2006/09/20(水) 01:26:39 ]
ただし、クラスメソッドにはインスタンスが存在しないため、
暗黙の self オブジェクトを使うことはできません。
wisdom.sakura.ne.jp/programming/objc/objc11.html

使えるだろ。

689 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/09/20(水) 01:31:18 ]
にわかマカーです
ぶっちゃけSmalltalkの後継言語としてはRubyのほうが・・・。
RubyのCocoaバインディングがLeopardで標準サポートされるとか言う話を聞いたような。





690 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 07:37:50 ]
はいはい。

691 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 10:45:48 ]
>>686,688
そこは平気で嘘や勘違いを呼ぶ記述が書いてあるから初心者にはおすすめしませんが。
っていう話は既出な気がする。

692 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 11:19:51 ]
>>687
+(oneway void)xxx;
-(oneway void)xxx;
以外は無視されます。つまり返値を待ちます。

上記(oneway void)の場合は、処理の終了を待たずに戻ってきます。

693 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 11:57:36 ]
>>689
LeopardでRubyCocoaが標準搭載されるそうです。
Cocoa-Javaは捨てられて、代わりにRubyって感じ?
Appleもお気に入りのよう。

694 名前:デフォルトの名無しさん mailto:sage [2006/09/20(水) 12:52:01 ]
LeopardってRoRも載るんだよな

695 名前:デフォルトの名無しさん [2006/09/20(水) 14:18:02 ]
Pytonのバインディングも、10.4から入っていたような。

696 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 02:10:50 ]
Javaは型に対して厳し過ぎるからね



697 名前:デフォルトの名無しさん [2006/09/21(木) 03:46:18 ]
>>688
いやいや、使えないと思いますが。。。
もし使えたら、Java言語でのクラスメソッド内でthisが使えるということと同じになりますよ??
では逆に、クラスメソッドでselfが使えたとして、そのselfは何を指すのかお聞きしたい。

698 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 04:18:56 ]
>>697
> もし使えたら、Java言語でのクラスメソッド内でthisが使えるということと同じになりますよ??

いいえ、Objective-C は Java ではありません。

699 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 04:26:28 ]
>>698
失礼しました。Javaの話は忘れて下さい。今はObjective-Cの話ですものね。
では、クラスメソッドでselfが使えたとして、そのselfは何を指すのかということに関してはどうお考えですか?



700 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 04:31:55 ]
なにも考えていませんが、

Inside an instance method, self refers to the instance; but inside a
class method, self refers to the class object.

ということです。

701 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 04:36:16 ]
>>700
クラスメソッド内でのselfはクラスオブジェクトを指すんですか。
それは初耳です。自分の勉強不足である可能性がかなり高いので、
確認のため紹介いただいた英文の出典を教えていただけないですか?

702 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 04:45:07 ]
OBJECT-ORIENTED PROGRAMMING AND THE OBJECTIVE-C LANGUAGE

あるいは
developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/index.html
の The Language > How Messaging Works

703 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 04:48:24 ]
>>702
丁寧な回答ありがとうございます。やはりAppleのDeveloper Connectionのページでしたね。
早速読んで勉強します。ありがとうございましたm(__)m

704 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 08:17:21 ]
>クラスメソッド内でのselfはクラスオブジェクトを指す
Rubyでも同じですね。

smalltalk的で動的、というのがRubyと相性良い理由なのかな。

705 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 10:02:59 ]
>>701
> 自分の勉強不足である可能性がかなり高い
どうして、まっさきに、その可能性を疑わない?! オマエは mkino か?

706 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 13:01:23 ]
普通のCocoaプログラマなら誰でも知ってることをmkino氏が知らないわけないだろ。
メタクラスとかよく分からない俺でも、Obj-Cのクラスはオブジェクトであって、
NSObjectのインスタンスメソッドをクラスオブジェクトに対して呼べるくらいは知ってるぞ。

707 名前:デフォルトの名無しさん [2006/09/21(木) 17:07:41 ]
rubyCocoaってWindowsの世界で言うVBAというかCOMというか
マクロ(スクリプト?)みたいな使い方が出来るようになるの?

708 名前:デフォルトの名無しさん mailto:sage [2006/09/21(木) 17:23:33 ]
WinのVBAとかCOMに相当するものはOSAだと思うんだが。

709 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 00:07:42 ]
>>706
>NSObjectのインスタンスメソッドをクラスオブジェクトに対して呼べるくらいは知ってるぞ。
NSObjectクラスの-classメソッドなんかはそのいい例だね。



710 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 13:20:08 ]
あのぉ、ちょっとよろしいでしょうか?
[[NSObject new] class]; が NSObject なのは分かるのですが、
[NSObject class]; が NSObject になるのはなぜですか? 
NSObject のクラスメソッドはどこに定義されているのでしょう。

711 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 13:25:52 ]
>>710
定義はどこって。。。
とりあえず宣言は Foundation/NSObject.h にあるけど。

>790を見なかったことにすれば全く問題ないね。

712 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 13:31:19 ]
>>790に期待

713 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 13:42:15 ]
>>710
ここ読むと分かるかも。
journal.mycom.co.jp/column/objc/016/

714 名前:デフォルトの名無しさん mailto:sage [2006/09/22(金) 13:50:35 ]

ようし、お前らがその気ならこっちは
ProceduralSmalltalkだ

715 名前:710 mailto:sage [2006/09/22(金) 15:37:11 ]
>>713
ありがとうございます。すべての謎が解けました。
Objective-C のメタクラスはオブジェクトではないのですね。

716 名前:デフォルトの名無しさん mailto:sage [2006/09/24(日) 21:10:17 ]
今までGUIプログラミングはCocoaしかやったことないんですが、
Cocoaプログラマが一番取っ付きやすいWindows のAPIってなんでしょうかね。

717 名前:デフォルトの名無しさん [2006/09/24(日) 21:52:07 ]
VB

718 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/09/24(日) 22:11:28 ]
Visual C# 2005はタダだから使ってみるといいかも

719 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 03:25:50 ]
↓無料だよ。
www.turboexplorer.com/jp/cpp




720 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 19:12:06 ]
>>716
GNUstep

www.gnustep.org

721 名前:デフォルトの名無しさん mailto:sage [2006/09/25(月) 22:23:36 ]
GNUstepってOSXで使える?

722 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 06:44:45 ]
もちろん

723 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 10:49:05 ]
しかしOSXでGNUStep使う意味があるのだろうか…?

724 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 11:08:22 ]
>>716
WebObjects
.NET Framework

725 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 18:53:33 ]
>>723
クロスプラットフォームなソフトをObjective-Cで書きたいとか。

726 名前:デフォルトの名無しさん mailto:sage [2006/09/26(火) 19:04:08 ]
>>723
古いバージョンのOSXで新しいAPIを使いたいとか。

727 名前:デフォルトの名無しさん mailto:sage [2006/09/27(水) 09:52:43 ]
>>726
そんなに新しいAPI実装されてるの?

728 名前:デフォルトの名無しさん [2006/09/27(水) 15:36:01 ]
メモリリークについての質問です。

Xcodeで新規プロジェクトとしてCocoa Applicationを作成→ビルド→
パフォーマンスツールを使用して起動からMallocDebugを選択→MallocDebugのLaunchボタン→
MallocDebugのポップアップからLeaksを選択(この時点でリークはなし)→
Cocoa Applicationのウィンドウをクリックするなりしてアクティブにする→
MallocDebugのUpdateボタンを押す→「40 bytes in 1 node」のリーク発生

さらにCocoa Applicationをアクティブにするたびにリークが増えていくのですが、
これって気にしなくてもいいんでしょうか?

ちなみにターミナルからexport MallocStackLogging=YESした後、openで起動して
leaksで確認したところ、やはりリークが起こっているようです。

729 名前:728 [2006/09/27(水) 15:41:02 ]
書き忘れましたが、

OSX 10.4.7
G4
Xcode 2.4

の環境です。



730 名前:デフォルトの名無しさん [2006/09/28(木) 11:05:31 ]
OCUnitでUnitTestをしているのですが、
「オブジェクトがdealloc済であることをチェックする」にはどうしたら良いでしょうか?

dealloc 済のオブジェクトなので、何かメッセージを送ると落ちてしまいますし、
かといって、nil になっているわけでもないので、STAssertNil によるチェックも
できません。

731 名前:デフォルトの名無しさん [2006/09/29(金) 00:28:56 ]
>>728
自分も試しに、以前作った自作CocoaアプリのMalloc Debugやってみたら、
ウィンドウアクティブにするたびにリークが増えてくorz
一番最初はノーリーク。一回ウィンドウをアクティブにして、Updateすると、
40 bytes in 1 nodeのリーク。
症状全く同じだわ。
もしかして、アクティブにするたびに40bytesずつ増えてったりしない??
40 bytes in 1 node
80 bytes in 2 nodes
120 bytes in 3 nodes
160 bytes in 4 nodes
みたいに…

どなたかご存知の方いましたら、ご教示お願いします。


732 名前:731 [2006/09/29(金) 01:33:14 ]
まさかと思い、Apple純正のCocoaアプリ「計算機」でMallocDebug
やってみたら、なんと同じリークが…。ウィンドウアクティブにする
たびにリークが同じく40bytesずつ増えてく。
これって仕様なの??それとも他の理由が??
気にしなくていいということですかね?
もし本当にリークしてるなら、ウィンドウをアクティブにするのは
極力控えた方がいいってことなのかな〜(^^;)

733 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/09/29(金) 02:04:09 ]
どう見てもココアのバグです。本当にありがとうございました。

734 名前:731 [2006/09/29(金) 02:46:52 ]
>>733
やっぱそうなんですかね。
Appleは自分のCocoaアプリをMallocDebugにかけてないとは思えないですが…。
本当にCocoaのバグなら残念です。

735 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 04:27:46 ]
設計が古いからしょうがないですね。.NETなら原理的にありませんよ

736 名前:728 [2006/09/29(金) 09:45:54 ]
Safariをleaksで確認してて気がついたんだけど、リークしてるメモリの内容が...

英字入力状態:
Leak: 0x0581ad70 size=48 instance of 'NSCFString'
0xa07b9674 0x0001078c 0x1b636f6d 0x2e617070 .{.t.....com.app
0x6c652e69 0x6e707574 0x6d657468 0x6f642e52 le.inputmethod.R
0x6f6d616e 0x00000000 0x00000000 0x00000003 oman............

ひらがな入力状態:
Leak: 0x004a8d30 size=48 instance of 'NSCFString'
0xa07b9674 0x0001078c 0x1e636f6d 0x2e617070 .{.t.....com.app
0x6c652e69 0x6e707574 0x6d657468 0x6f642e4a le.inputmethod.J
0x6170616e 0x65736500 0x00000000 0x00000003 apanese.........

カタカナ入力状態:
Leak: 0x0584e340 size=64 instance of 'NSCFString'
0xa07b9674 0x0001078c 0x27636f6d 0x2e617070 .{.t....'com.app
0x6c652e69 0x6e707574 0x6d657468 0x6f642e4a le.inputmethod.J
0x6170616e 0x6573652e 0x4b617461 0x6b616e61 apanese.Katakana
0x00610076 0x006f0072 0x0076006f 0x00726525 .a.v.o.r.v.o.re%

全角英字入力状態:
Leak: 0x0574b260 size=64 instance of 'NSCFString'
0xa07b9674 0x0001078c 0x2d636f6d 0x2e617070 .{.t....-com.app
0x6c652e69 0x6e707574 0x6d657468 0x6f642e4a le.inputmethod.J
0x6170616e 0x6573652e 0x46756c6c 0x57696474 apanese.FullWidt
0x68526f6d 0x616e0072 0x00660061 0x0075006c hRoman.r.f.a.u.l

英字とひらがなの場合はウィンドウをアクティブにするたびにリークが増えますが、
カタカナと全角英字は増えません。やっぱinputmethodのバグですかね。

737 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 10:23:37 ]
>>735
Objective-C 2.0でガベージコレクションが導入されたら、
Cocoaも原理上リークがなくなるはずだ。

738 名前:728 [2006/09/29(金) 10:24:14 ]
とりあえずバグレポート提出してきたです。下手な英語で書いたけど、
どこか日本語で受け付けてくれるところはないんでしょうかね。

739 名前:731 mailto:sage [2006/09/29(金) 10:36:08 ]
>>738
おぉ、助かります!!早く解決されることを祈るばかりです。
できれば、Cocoaのバグではなくて、MallocDebugのバグであってほしいです。



740 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 21:16:08 ]
>>730
とりあえず思いついた方法
・ひとつ余分なretainをして、retainCount == 1となることを検証
・MallocScribble環境変数を設定して、idのサイズ分0x55になっていることを検証

741 名前:デフォルトの名無しさん mailto:sage [2006/09/29(金) 21:20:21 ]
>>740
そもそもretainできない件






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<229KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef