1 名前:デフォルトの名無しさん mailto:sage [2012/07/31(火) 00:05:43.45 ] プログラミング言語 D (D Programming Language) について語るスレッドです。 ■本家 dlang.org/ - 公式(英語) www.kmonos.net/alang/d/ - 公式の和訳 d.puremagic.com/issues/ - D言語バグ報告 https://github.com/D-Programming-Language - D言語開発リポジトリ ■Wiki dusers.dip.jp/ - D言語友の会(日本語フォーラムあり) prowiki.org/wiki4d/ - Wiki4D(公認Wiki) ■前スレ D言語 Part29 toro.2ch.net/test/read.cgi/tech/1329714331/ ■過去スレ、関連スレ makimo.to:8000/cgi-bin/search/search.cgi?q=D%8C%BE%8C%EA&sf=2&all=on&view=table&shw=5000
99 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 13:43:00.96 ] >>98 Thanks! 使い方がまずいのか, std.c.process.exit だと scope(exit) hoge(); が実行されなかったので, 素直にmainまで伝搬させることにしました。
100 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 13:50:00.88 ] andreiは例外投げろ、それがDのやり方だっていってるね
101 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/12(日) 15:04:10.99 ] >>82 えっ、具体例を挙げてくれますか? CPtrとinで対応していると思いますが。
102 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 15:12:19.10 ] D言語の薄い本が完売したと聞いて動揺した
103 名前:デフォルトの名無しさん [2012/08/12(日) 16:20:30.71 ] ☆
104 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 18:14:23.98 ] そうかもう夏コミの季節か 明日からだっけ…?
105 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 20:14:38.46 ] 今日で終わりだよ
106 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 20:28:33.95 ] \(^o^)/オワタ
107 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 20:34:26.88 ] with (w = .writeln) { w("www") } みたいな構文が欲しい
108 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 20:36:45.02 ] >>101 class Moge { HWND m_hWnd; void Hoge() const { WinAPIHoge(m_hWnd); } } こんな感じだとconst入れてくれるなってエラー吐くのよ WinAPIHoge(cast(void*)m_hWnd); こんな状況になるわけさ ただ値を参照してるだけのようなAPIにはWINAPIの関数パラメータのほうにconstをぶっ込んでくれると助かる
109 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 20:37:00.89 ] { alias writeln w; w(1); }
110 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 20:38:03.62 ] あれ、前は関数内でalias作れないような気がしてたけど気のせいだったかな ありがと
111 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 23:59:19.36 ] structはnewしなくてもいい、classはC++と違ってnewしないとだめだけど C++から割とでかいプログラムを移植する場合structなのかclassなのか全部把握してないとひどい目にあうよね C++だと多態使う必要なければnewしないの普通だからそういうとこではまる ほんとはできればnewしないで使いたいなあとか思ったり みんなその辺どうしてる?
112 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 00:03:58.47 ] static opCall()
113 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 00:04:34.63 ] classは使わない 全部struct
114 名前:デフォルトの名無しさん [2012/08/13(月) 00:10:52.03 ] >>112 class C; C c; これをC++から移植するとき = new C()をつけるのを忘れてデバッグで苦労するのを何とかしたいんだ opCall定義してもC c;じゃ通らないから結局解決しないんだぜ >>113 お、それいいね!! 継承できんがな(´・ω・`)
115 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 00:14:47.98 ] >>114 これでどうだ ttp://www.kmonos.net/alang/d/template-mixin.html
116 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 00:25:53.08 ] >>115 お姉さん基底クラスにキャストして多態的なことしたいのェ・・・
117 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 00:31:33.78 ] もうアキラメロン
118 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 01:18:10.93 ] クラス名を全部変える(頭に Cをつけるとか) それからコンパイル時にこけたところを一つずつ直す
119 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 04:53:43.24 ] 何で怒られるんです? need 'this' to access member ideone.com/cyoXu
120 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 08:00:40.46 ] -debugコンパイルスイッチを付けた場合と付けない場合とで出力内容が違うんだけど、これって仕様通り? dpaste.com/785387/
121 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 08:15:03.61 ] 単に未定義の部分が揺れてるだけだとおも
122 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 08:44:00.60 ] デストラクタでメンバ触っていいのか?
123 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 09:07:07.74 ] >>122 ttp://www.kmonos.net/alang/d/class.html#destructors > auto オブジェクトや DeleteExpression で削除されるオブジェクト (GCからのデストラクタ呼び出しではないので、参照は必ず有効)には当てはまりません。
124 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 09:24:52.88 ] postblitが正しく呼び出されないバグ
125 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/13(月) 09:38:10.53 ] >>108 なるほど。
126 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 10:45:12.79 ] >>120 -debug時にデストラクタが4回呼ばれるのも気になる
127 名前:120 mailto:sage [2012/08/13(月) 12:57:42.83 ] dpaste.comとdpaste.dzfl.plを誤爆しただなんて恥ずかしくて言えない
128 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 22:14:02.96 ] >>119 www.kmonos.net/alang/d/expression.html#TypeidExpression ideone.com/clone/Pq85f
129 名前:デフォルトの名無しさん mailto:sage [2012/08/13(月) 22:16:29.19 ] ideoneのアドレスみすったかも ideone.com/CfqgQ
130 名前:デフォルトの名無しさん mailto:sage [2012/08/14(火) 10:02:05.53 ] ほほーう、ふふーん。二段構えなんですね
131 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/14(火) 15:53:19.37 ] <cguid.h>のCLSID_CCD*の値と、<mshtml.h>のCLSID_*の値が分からない。 誰か教えて。。。
132 名前:デフォルトの名無しさん mailto:sage [2012/08/14(火) 16:31:58.30 ] >>131 toro.2ch.net/test/read.cgi/tech/1344046683/
133 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/14(火) 16:35:25.22 ] c_dfDIKeyboard, c_dfDIMouse2, c_dfDIJoystickの中身は定義した方がいい?
134 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/14(火) 17:25:59.44 ] APIのライブラリが足りないなぁ。implibかなんかで作ろうか。。。
135 名前:デフォルトの名無しさん mailto:sage [2012/08/14(火) 17:50:13.61 ] ここはお前の日記帳じゃねえんだ バカッターにでも書いてろ、な!
136 名前:デフォルトの名無しさん mailto:sage [2012/08/14(火) 17:59:51.57 ] twitterをご存じないのではないでしょうか 140字までの短文を投稿・閲覧できるサービスです 片山さんの書き込みには適していると思います 私もおすすめしますよ
137 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 00:28:01.03 ] extern const CLSID CLSID_CCDFormKrnl; extern const CLSID CLSID_CCDPropertyPage; extern const CLSID CLSID_CCDFormDialog; extern const CLSID CLSID_CCDCommandButton; extern const CLSID CLSID_CCDComboBox; extern const CLSID CLSID_CCDTextBox; extern const CLSID CLSID_CCDCheckBox; extern const CLSID CLSID_CCDLabel; extern const CLSID CLSID_CCDOptionButton; extern const CLSID CLSID_CCDListBox; extern const CLSID CLSID_CCDScrollBar; extern const CLSID CLSID_CCDGroupBox; extern const CLSID CLSID_CCDGeneralPropertyPage; extern const CLSID CLSID_CCDGenericPropertyPage; extern const CLSID CLSID_CCDFontPropertyPage; extern const CLSID CLSID_CCDColorPropertyPage; extern const CLSID CLSID_CCDLabelPropertyPage; extern const CLSID CLSID_CCDCheckBoxPropertyPage; extern const CLSID CLSID_CCDTextBoxPropertyPage; extern const CLSID CLSID_CCDOptionButtonPropertyPage; extern const CLSID CLSID_CCDListBoxPropertyPage; extern const CLSID CLSID_CCDCommandButtonPropertyPage; extern const CLSID CLSID_CCDComboBoxPropertyPage; extern const CLSID CLSID_CCDScrollBarPropertyPage; extern const CLSID CLSID_CCDGroupBoxPropertyPage; extern const CLSID CLSID_CCDXObjectPropertyPage;
138 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 00:34:26.46 ] >>131 p:sage www.dotup.org/uploda/www.dotup.org3311898.h.html
139 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 12:04:02.32 ] 久しぶりに見に来たけど丹後さん死んでしまったん?
140 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 12:27:35.07 ] D2でいらない子扱いにされて拗ねてる
141 名前:デフォルトの名無しさん mailto:sage [2012/08/15(水) 12:37:17.15 ] どっちかというと形を変えながらだんだんPhobosにマージされていってるんじゃないの?
142 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 04:37:40.53 ] ああ、すごい遅いけど>>1 乙です。 ローダ更新しました。 ttps://dl.dropbox.com/u/1630843/hp/d/mqo_loader.zip o Derelict3 に移行しました。 o 全体的に書き直しました。 o テクスチャ貼りました。 o コンパイル時評価挫折しました。← New!! 軽い気持ちではじめたからDropboxだったけど、sourceforge に場所借りようかな。
143 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 06:24:04.14 ] sourceforgeもいいけどgithubもいいよ!
144 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 09:22:42.65 ] すげー 乙乙
145 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 15:00:57.31 ] >>142 スタックトレース吐いた〜〜。 ttp://ideone.com/BVUBL
146 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 15:24:26.01 ] デマングれてないとこがあるな…
147 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 21:18:36.18 ] foreach (; 0 .. 10) みたいなカウンタ変数すら無いループとかできないかな
148 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 21:48:54.30 ] 単純に回したいなら、構文は foreach(10) でいいんじゃないか。
149 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 21:59:31.11 ] 0開始とは限らないから foreach (5 .. 15) も必要じゃね?
150 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 22:07:14.71 ] え。ループカウントは使いたいの?
151 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 22:10:49.41 ] >>149 変数無いのにどうやってカウント値を参照するんだ?
152 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 22:20:04.89 ] カウント変数$_に格納されます
153 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 22:21:10.27 ] >>152 Perl?っていうかマジで?
154 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 22:30:18.95 ] >>152 だったら普通に変数使えよw
155 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 23:08:28.66 ] 大してご利益もないのに複雑になるだけの構文イラネ
156 名前:149 mailto:sage [2012/08/16(木) 23:45:58.67 ] >>150-151 こいつぁとんだ間抜けだぜ! 笑ってやれ笑ってやれHAHAHA
157 名前:デフォルトの名無しさん mailto:sage [2012/08/16(木) 23:48:31.39 ] src\druntime\import\core\stdc\* のファイルって2.059だと.diなのに2.060では.dになってるのはなぜですか?
158 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 00:31:17.53 ] >>145 おっとこいつは失礼。 -> mqo ファイル内でテクスチャファイル名が絶対パスなの考慮してなかった。直しました。 ttps://dl.dropbox.com/u/1630843/hp/d/mqo_loader.zip ご指摘ありがとうございました。m(_ _)m >>143 github のがいいんだ。じゃ次のからそうします。 >>146 2.059の時も文字化け?みたいなのしてたけど2.060でさらに読みにくくなったよね。>スタックトレース
159 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 01:44:08.70 ] >>158 スタックトレース吐かなくなりました。GJ!
160 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 01:54:36.07 ] foreach (_; 0..10)で我慢
161 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 11:17:18.65 ] Error 42: Symbol Undefined _D6object29__T16AssociativeArrayTAxaTxkZ16Associativ eArray6valuesMFNdZAxk Error 42: Symbol Undefined _D6object29__T16AssociativeArrayTAxaTxkZ16Associativ eArray6valuesMFNdZAxk リンク時にこういうエラーが出ます。 おそらくisAssociativeArrayを使っているからだと思いますが、どうすればいいですか?
162 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 13:14:26.86 ] 対象の xxxx.lib をコンパイル時に参照するように指定してあげないといけないんじゃないの
163 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 13:19:36.44 ] 連想配列周りのバグが直ってないのがいくつかあった気がする d.puremagic.com/issues/show_bug.cgi?id=5950 コマンドラインでソースファイル名を渡す順序を入れ替えると 出なくなったりとか変なバグがある
164 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 17:21:47.56 ] >>162 isAssociativeArrayはD言語標準なので困ったところなのです。 >>163 コンパイラのバグだったか・・・。 ソースファイルを渡す順序の入れ替え・・・地味な作業になりそうです。
165 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 17:33:45.50 ] まさかisAssociativeArrayを関数呼び出ししてない?
166 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 18:02:24.16 ] >>165 static if (isAssociativeArray!(Hoge)) こんな感じで使ってます。
167 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 18:19:15.01 ] >>161 デマングリングだけしてみた。これに見覚えは? @property const(uint)[] object.AssociativeArray!(const(char)[], const(uint)).AssociativeArray.values()
168 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 18:56:17.52 ] 演算子オーバーロードみたいにコンパイラが内部で書き換えるやつじゃね
169 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 19:48:23.16 ] それD組み込みの連想配列の実装コードな気がする・・
170 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 19:53:45.79 ] なんかkeys使うとリンクに失敗することがあったような
171 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 20:42:53.43 ] >>167 直接、そういったテンプレートを呼び出した覚えはないです。 >>168-170 やはりコンパイラのバグか・・・。
172 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 21:26:10.67 ] コンパイラはいつも夢を与えてくれますが 同時にバグも残していくのです
173 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 21:59:34.29 ] つまり夢いっぱいってことさ。
174 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 22:04:15.27 ] Open your Passion!!
175 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 22:29:42.05 ] dmdのバグ price less
176 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 23:21:32.66 ] 夢だけじゃ腹は膨れないんだよッ
177 名前:デフォルトの名無しさん mailto:sage [2012/08/17(金) 23:35:06.98 ] だったらケーキを食べればいいじゃない
178 名前:161 mailto:sage [2012/08/18(土) 09:46:56.35 ] 一応報告ですけど、コンパイラをdmd2.059からdmd2.054にしたらビルドできました(他のverは試してない)。
179 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 09:57:37.82 ] 最新版を試してない・・・だと・・・
180 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 10:23:58.60 ] HEADじゃない…だと…?
181 名前:デフォルトの名無しさん mailto:sage [2012/08/18(土) 10:42:08.53 ] dmd -libのときって.libファイル指定できないんですか? ライブラリソースのlib.dの中ではsc.iniで指定したパスにあるxxx.libの関数を使用しています。 dmd -lib lib.d xxx.lib ⇒Error: Error reading file 'xxx.lib' もしかしてexeソースのsrc.dで直接xxx.libを使っていなくて exeを作る場合は依存関係のあるすべての.libをdmdに並べないといけないのでしょうか dmd src.d lib.lib xxx.lib
182 名前:161 mailto:sage [2012/08/18(土) 23:32:43.12 ] dmd2.060が出てたの気づいてなかった・・・。
183 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 21:40:24.95 ] ttp://dusers.dip.jp/modules/forum/index.php?topic_id=119#post_id442 薄い本がでるのか
184 名前:デフォルトの名無しさん mailto:sage [2012/08/21(火) 22:31:12.36 ] 完売したらしいね
185 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 08:36:23.64 ] おっくれてるぅー
186 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 17:23:50.31 ] あれだけ扱い難いC/C++の処理系のバグの少なさには恐れ入ったもんだが Dはどうしてだめなんだ。
187 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 17:25:52.37 ] 仕様が決まってないから
188 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 17:37:57.10 ] こればかは どうしようもない
189 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 19:47:24.59 ] dlang.org/bugstats.php ずいぶん改善されてる実感はあるんだけど せめて、Criticalが1桁になればなあ・・
190 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 19:49:25.17 ] ウォルターの存在自体がバグ
191 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 21:30:22.40 ] >>189 改善されてないでしょ… バグ曲線の見方は、newが少なくならないと安定してきたとはみなされないし。
192 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 22:56:54.33 ] class C{...} class D : C{...} C d = new D; dからDを得る方法ありますか? typeof(d)だとCになってしまう。
193 名前:デフォルトの名無しさん mailto:sage [2012/08/22(水) 23:23:48.46 ] d.typeof
194 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 12:09:18.20 ] d.toString
195 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/23(木) 16:15:36.24 ] >>82 できました。
196 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/23(木) 16:52:33.59 ] 遅くなってごめんなさ
197 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 16:59:14.16 ] あんなマンパワーの居る作業を一人でやったのか… お疲れさん。
198 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 19:40:34.48 ] >>196 Makefile 46 : ## DEBUG OR RELEASE? 逆じゃね?
199 名前:デフォルトの名無しさん mailto:sage [2012/08/23(木) 21:10:34.89 ] ## DEBUG OR RELEASE? DFLAGS=-inline -O -release -w $(DEFS) # for Debug (default) #DFLAGS=-debug -gc -unittest -w $(DEFS) # for Release これは逆やね