D言語 Part30
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2012/07/31(火) 00:05:43.45■本家
http://dlang.org/ - 公式(英語)
http://www.kmonos.net/alang/d/ - 公式の和訳
http://d.puremagic.com/issues/ - D言語バグ報告
https://github.com/D-Programming-Language - D言語開発リポジトリ
■Wiki
http://dusers.dip.jp/ - D言語友の会(日本語フォーラムあり)
http://prowiki.org/wiki4d/ - Wiki4D(公認Wiki)
■前スレ
D言語 Part29
http://toro.2ch.net/test/read.cgi/tech/1329714331/
■過去スレ、関連スレ
http://makimo.to:8000/cgi-bin/search/search.cgi?q=D%8C%BE%8C%EA&sf=2&all=on&view=table&shw=5000
0153デフォルトの名無しさん
2012/08/16(木) 22:21:10.27Perl?っていうかマジで?
0154デフォルトの名無しさん
2012/08/16(木) 22:30:18.95だったら普通に変数使えよw
0155デフォルトの名無しさん
2012/08/16(木) 23:08:28.660157デフォルトの名無しさん
2012/08/16(木) 23:48:31.39のファイルって2.059だと.diなのに2.060では.dになってるのはなぜですか?
0158デフォルトの名無しさん
2012/08/17(金) 00:31:17.53-> mqo ファイル内でテクスチャファイル名が絶対パスなの考慮してなかった。直しました。
ttps://dl.dropbox.com/u/1630843/hp/d/mqo_loader.zip
ご指摘ありがとうございました。m(_ _)m
>>143
github のがいいんだ。じゃ次のからそうします。
>>146
2.059の時も文字化け?みたいなのしてたけど2.060でさらに読みにくくなったよね。>スタックトレース
0159デフォルトの名無しさん
2012/08/17(金) 01:44:08.70スタックトレース吐かなくなりました。GJ!
0160デフォルトの名無しさん
2012/08/17(金) 01:54:36.070161デフォルトの名無しさん
2012/08/17(金) 11:17:18.65eArray6valuesMFNdZAxk
Error 42: Symbol Undefined _D6object29__T16AssociativeArrayTAxaTxkZ16Associativ
eArray6valuesMFNdZAxk
リンク時にこういうエラーが出ます。
おそらくisAssociativeArrayを使っているからだと思いますが、どうすればいいですか?
0162デフォルトの名無しさん
2012/08/17(金) 13:14:26.860163デフォルトの名無しさん
2012/08/17(金) 13:19:36.44http://d.puremagic.com/issues/show_bug.cgi?id=5950
コマンドラインでソースファイル名を渡す順序を入れ替えると
出なくなったりとか変なバグがある
0164デフォルトの名無しさん
2012/08/17(金) 17:21:47.56isAssociativeArrayはD言語標準なので困ったところなのです。
>>163
コンパイラのバグだったか・・・。
ソースファイルを渡す順序の入れ替え・・・地味な作業になりそうです。
0165デフォルトの名無しさん
2012/08/17(金) 17:33:45.500166デフォルトの名無しさん
2012/08/17(金) 18:02:24.16static if (isAssociativeArray!(Hoge))
こんな感じで使ってます。
0167デフォルトの名無しさん
2012/08/17(金) 18:19:15.01デマングリングだけしてみた。これに見覚えは?
@property const(uint)[] object.AssociativeArray!(const(char)[], const(uint)).AssociativeArray.values()
0168デフォルトの名無しさん
2012/08/17(金) 18:56:17.520169デフォルトの名無しさん
2012/08/17(金) 19:48:23.160170デフォルトの名無しさん
2012/08/17(金) 19:53:45.790171デフォルトの名無しさん
2012/08/17(金) 20:42:53.43直接、そういったテンプレートを呼び出した覚えはないです。
>>168-170
やはりコンパイラのバグか・・・。
0172デフォルトの名無しさん
2012/08/17(金) 21:26:10.67同時にバグも残していくのです
0173デフォルトの名無しさん
2012/08/17(金) 21:59:34.290174デフォルトの名無しさん
2012/08/17(金) 22:04:15.270175デフォルトの名無しさん
2012/08/17(金) 22:29:42.05price less
0176デフォルトの名無しさん
2012/08/17(金) 23:21:32.660177デフォルトの名無しさん
2012/08/17(金) 23:35:06.980178161
2012/08/18(土) 09:46:56.350179デフォルトの名無しさん
2012/08/18(土) 09:57:37.820180デフォルトの名無しさん
2012/08/18(土) 10:23:58.600181デフォルトの名無しさん
2012/08/18(土) 10:42:08.53ライブラリソースの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
0182161
2012/08/18(土) 23:32:43.120183デフォルトの名無しさん
2012/08/21(火) 21:40:24.95薄い本がでるのか
0184デフォルトの名無しさん
2012/08/21(火) 22:31:12.360185デフォルトの名無しさん
2012/08/22(水) 08:36:23.640186デフォルトの名無しさん
2012/08/22(水) 17:23:50.31Dはどうしてだめなんだ。
0187デフォルトの名無しさん
2012/08/22(水) 17:25:52.370188デフォルトの名無しさん
2012/08/22(水) 17:37:57.10どうしようもない
0189デフォルトの名無しさん
2012/08/22(水) 19:47:24.59ずいぶん改善されてる実感はあるんだけど
せめて、Criticalが1桁になればなあ・・
0190デフォルトの名無しさん
2012/08/22(水) 19:49:25.170191デフォルトの名無しさん
2012/08/22(水) 21:30:22.40改善されてないでしょ…
バグ曲線の見方は、newが少なくならないと安定してきたとはみなされないし。
0192デフォルトの名無しさん
2012/08/22(水) 22:56:54.33class D : C{...}
C d = new D;
dからDを得る方法ありますか?
typeof(d)だとCになってしまう。
0193デフォルトの名無しさん
2012/08/22(水) 23:23:48.460194デフォルトの名無しさん
2012/08/23(木) 12:09:18.200195片山博文MZボット ◆0lBZNi.Q7evd
2012/08/23(木) 16:15:36.240196片山博文MZボット ◆0lBZNi.Q7evd
2012/08/23(木) 16:52:33.590197デフォルトの名無しさん
2012/08/23(木) 16:59:14.16お疲れさん。
0198デフォルトの名無しさん
2012/08/23(木) 19:40:34.48Makefile
46 : ## DEBUG OR RELEASE?
逆じゃね?
0199デフォルトの名無しさん
2012/08/23(木) 21:10:34.89DFLAGS=-inline -O -release -w $(DEFS) # for Debug (default)
#DFLAGS=-debug -gc -unittest -w $(DEFS) # for Release
これは逆やね
0200デフォルトの名無しさん
2012/08/24(金) 22:15:41.39char* hoge();
を文字列として引っ張ってきたいのですが、そのままだと文字のポインタのような感じになってるみたいです。
文字列のように持ってくる何かいい方法は無いでしょうか
0201デフォルトの名無しさん
2012/08/24(金) 22:53:42.860202デフォルトの名無しさん
2012/08/24(金) 22:56:05.460203デフォルトの名無しさん
2012/08/24(金) 22:56:06.230204デフォルトの名無しさん
2012/08/24(金) 22:57:25.060205デフォルトの名無しさん
2012/08/24(金) 23:00:16.96char* p = hoge();
string s = p[0 .. strlen(p)].idup;
というのが一番簡単かな
Cライブラリで確保されたメモリは
GC管理下に無いからコピーした方が扱いやすいと思う
自分で管理出来るならidupしないでキャストしてもいいのかな
0206205
2012/08/24(金) 23:01:55.61to賢いな
0207デフォルトの名無しさん
2012/08/24(金) 23:08:16.61その関数がmallocしてくるのかstaticな領域を返すのか確認した方がいいです
0208デフォルトの名無しさん
2012/08/24(金) 23:09:35.25isたんもかわいいお
0209デフォルトの名無しさん
2012/08/24(金) 23:22:48.60http://toro.2ch.net/test/read.cgi/tech/1320314325/
0210200
2012/08/24(金) 23:40:17.15ですね。
関数内で作成した文字列は危険だから返すな!
予めメモリを確保した所から文字列としてchar*を返す分には問題ない。
とかそういう感じですかね?
ご指摘ありがとうございます。ちゃんと手直ししました。
色々とありがとうございます。
0211デフォルトの名無しさん
2012/08/24(金) 23:43:42.830212デフォルトの名無しさん
2012/08/24(金) 23:47:41.560213デフォルトの名無しさん
2012/08/24(金) 23:49:28.53お前とはうまい酒が飲めそうだ
0214デフォルトの名無しさん
2012/08/24(金) 23:53:40.520215デフォルトの名無しさん
2012/08/24(金) 23:56:57.30趣味がが増えたよ! やったねたえちゃん!
0216デフォルトの名無しさん
2012/08/25(土) 01:04:46.580217デフォルトの名無しさん
2012/08/25(土) 01:06:23.590218デフォルトの名無しさん
2012/08/25(土) 01:53:04.540219デフォルトの名無しさん
2012/08/25(土) 13:24:47.03あとこういうのってどこに仕様書いてありますか
C c = new C;
cast(void*)c
0220デフォルトの名無しさん
2012/08/25(土) 17:24:59.46> クラスオブジェクトは参照によってのみインスタンス化されます。
0221デフォルトの名無しさん
2012/08/25(土) 19:33:51.34そこは見たのですが、その「参照」は何もラップされていないアドレスと考えて良いんですか?
0222デフォルトの名無しさん
2012/08/25(土) 20:11:51.250223デフォルトの名無しさん
2012/08/25(土) 20:33:19.690224デフォルトの名無しさん
2012/08/26(日) 02:18:07.74どっかでポインタ用の変数を自動生成してるってこと?
0225デフォルトの名無しさん
2012/08/26(日) 02:27:41.880226デフォルトの名無しさん
2012/08/26(日) 02:38:20.51クラスの内部から取得する場合にはどうすればいいの?
クラスが生成されてる間に、アドレスの形で保持しておいて
スコープが外れても色々な所で使い回したいとかそういうケースなんだけど
0227デフォルトの名無しさん
2012/08/26(日) 03:03:57.140228デフォルトの名無しさん
2012/08/26(日) 04:01:17.55thisは、Classへのアドレス?
&thisは、Classへのアドレスを記憶するために変数が用意される感じ?
とか、そんな感じで混乱してます
0229デフォルトの名無しさん
2012/08/26(日) 10:10:20.29参照変数の内容にはポインタを含むから、&thisはポインタのポインタになるってわけ。
0230デフォルトの名無しさん
2012/08/26(日) 10:12:39.890231デフォルトの名無しさん
2012/08/26(日) 12:10:55.47そういう場合に>>219を使う。
thisからアドレスを得たいなら cast(void*)this でいい。
0232デフォルトの名無しさん
2012/08/26(日) 14:04:30.06もうちょっとよいやり方はこちら
C c = new C;
void* p = *cast(void**)&c;
0233デフォルトの名無しさん
2012/08/26(日) 15:43:06.33ウォルタくんはこういうややこしい部分を図解してやればいいのになw
0234デフォルトの名無しさん
2012/08/26(日) 16:20:28.860235デフォルトの名無しさん
2012/08/26(日) 16:53:50.450236デフォルトの名無しさん
2012/08/26(日) 17:11:05.960237デフォルトの名無しさん
2012/08/26(日) 17:50:18.800238デフォルトの名無しさん
2012/08/27(月) 00:00:18.60何をすれば解決するのかさっぱりで
0239デフォルトの名無しさん
2012/08/27(月) 03:18:43.15ありがとう
0240デフォルトの名無しさん
2012/08/27(月) 07:03:55.03align絡みだと思う
こっちでは
align(1) struct S {...}
みたいなのがあると出た
struct S {align(1): ... }
なら問題無しみたい
0241片山博文MZボット ◆0lBZNi.Q7evd
2012/08/27(月) 20:08:06.06助けて! -L/PAGESIZE:1024を付けてもダメだった。
0242片山博文MZボット ◆0lBZNi.Q7evd
2012/08/27(月) 20:37:29.030243デフォルトの名無しさん
2012/08/27(月) 20:43:50.090244デフォルトの名無しさん
2012/08/27(月) 21:38:26.40吐いてるエラーメッセージが真実とは限らない
0245デフォルトの名無しさん
2012/08/27(月) 23:03:47.65これはD言語erにとって大したことない感じなの?
0246デフォルトの名無しさん
2012/08/27(月) 23:18:38.10一日ちょっと楽しめたぜ
0247デフォルトの名無しさん
2012/08/27(月) 23:53:42.340248デフォルトの名無しさん
2012/08/27(月) 23:56:21.38でサイズが計算と合わない
0249デフォルトの名無しさん
2012/08/28(火) 01:21:00.19うぉるたんが disastrous bug って言ってるヤツかな
緊急リリースが出るかと思ってたけど出ない
0250デフォルトの名無しさん
2012/08/28(火) 06:30:28.64Dがつく単語をわざと選んでんのかな
0251デフォルトの名無しさん
2012/08/28(火) 10:10:20.94破壊とか崩壊とか解体とか災厄とか絶望とか、
その手の単語はラテン語源のことが多いけど、
そっちで接頭辞 de- とか dis- とかがつく単語で表現されてるもんだからもともとDで始まる単語が多い
0252デフォルトの名無しさん
2012/08/28(火) 10:23:28.24■ このスレッドは過去ログ倉庫に格納されています