[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 09/20 13:16 / Filesize : 65 KB / Number-of Response : 371
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

D言語 Part30



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

39 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 15:03:55.26 ]
あるスレッドからTLS変数を一切使わないからTLSコピーしないでほしいんだけどなんか方法ない?

40 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 21:39:29.68 ]
?

41 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 21:44:49.68 ]
勝手にコピーとかしないんじゃ?

42 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 22:51:29.59 ]
スレッドの数だけコピーされるのがイヤってことでしょ
全部 shared もしくは D1 w

43 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 22:54:30.63 ]
__gsharedでいいじゃん

44 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 23:20:51.86 ]
TLSは普通に使うんだけど、特定のスレッドからはアクセスしないので
「このスレッドからはTLSを使いませんよ」宣言が欲しいってことでは

45 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 23:33:26.62 ]
方法無さそうだなあ

46 名前:デフォルトの名無しさん mailto:sage [2012/08/07(火) 23:39:47.24 ]
自前のTLS実装作る

47 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 01:40:56.10 ]
片山さん、ついでにdirect2dのポーティングもやってくだしあ><



48 名前:デフォルトの名無しさん mailto:sage [2012/08/08(水) 23:40:43.56 ]
>>39
taskPoolで最低限の初期化を我慢して使い回すか、std.randomのrndGenみたいに使うまでTLSの初期化を遅延するかどっちか?

Threadクラス改造すれば静的コンストラクタ呼び出さないのもいけそうだけど。

49 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/09(木) 12:46:33.26 ]
Wonders ver.1.04
https://github.com/katahiromz/wonders
katahiromz.web.fc2.com/d/wonders.html
commdefとcommoncontrolsをcommctrlに統合。
gdiplus, fourcc, mmstream, directx/ddraw, directx/ddstreamを追加。
directx関係のimportを最適化。

50 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/09(木) 12:58:24.29 ]
>>47 Direct2Dはどのヘッダでしょうか?

51 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/09(木) 14:17:06.42 ]
>>50 ぐぐったら
d2d1.h, d2d1helper.h, d2d1helper.h, d2derr.hって出てきた。
ポートするぞ。

52 名前:デフォルトの名無しさん mailto:sage [2012/08/09(木) 17:37:25.07 ]
githubを使い始めたり
片山くんが何気に成長しとるw

53 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/09(木) 22:10:43.23 ]
d2d1、d2d1helperのポートは難易度高い

54 名前:デフォルトの名無しさん mailto:sage [2012/08/09(木) 23:53:52.41 ]
フォント表示にdwrite.h、画像表示にwincodec.hも必要。

55 名前:デフォルトの名無しさん mailto:sage [2012/08/09(木) 23:54:51.49 ]
泣き言は完成してから聞く

56 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 00:01:26.59 ]
ゲーム用サウンドはDirectSoundが廃止になって今はXAudio2が主流だから、DirectXをサポートするならXAudio2はあったほうがいいかも

57 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 15:59:09.76 ]
d2dはcomのモデルみたいだから大変かもね



58 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 19:49:01.67 ]
ttp://dpaste.dzfl.pl/88cd7bc7
> 878.d(6): Error: function compileme878.C2.method cannot override a non-virtual function
ちょっと何言ってるか分かんないですね

59 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 20:02:11.02 ]
ttp://dpaste.dzfl.pl/6f91f1d6
というかpackageってなんなんだ?
漠然とmoduleのことだと思ってたんだけどとんだ間違いで俺が間抜けなだけなのかな

60 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 20:19:35.53 ]
パッケージはモジュールの集まり

もっとわかりやすく言うとディレクトリ

61 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 20:21:04.03 ]
>>60
なるほろThx
そういえばJavaもそうだった

だとするとpackageでvirtualじゃなくなるのは単なるバグか

62 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 20:59:44.38 ]
d.puremagic.com/issues/show_bug.cgi?id=1161
まだこんなのも残ってるんだぜ

63 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 21:17:00.70 ]
privateで装飾すると非仮想関数として固定されるのと同じじゃない?

64 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 21:26:54.11 ]
仮想関数 ttp://www.kmonos.net/alang/d/function.html#virtual-functions

全ての非staticかつ非privateかつ非templateなメンバ関数は、 仮想関数です。
これは非効率的に聞こえるかもしれませんが、 コード生成時にDはクラス階層を全て把握していますので、 オーバーライドされていない関数への呼び出しは全て最適化されて non-virtual になります。


アクセス保護属性 ttp://www.kmonos.net/alang/d/attribute.html#ProtectionAttribute

package は、モジュールは違っても同じパッケージに属するコードからの アクセスは許可するようにprivateを拡張したものです。
これは、モジュールがネストしたパッケージの中にある場合は、 最も内側のパッケージについてのみ適用されます。

65 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 21:43:49.25 ]
するとJavaのpackage-privateみたいな属性は存在しないってことかな

66 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 23:42:06.27 ]
納得いかない

import std.stdio;

extern(C)
void f(int n)
{
  writeln(typeid(&f));
}

void main()
{
   f(0);
}

⇒ void()*

67 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 23:55:09.40 ]
writelnがアレなだけかね
pragma(msg, typeof(&f)); // void function(int n)



68 名前:デフォルトの名無しさん mailto:sage [2012/08/10(金) 23:55:46.33 ]
あ、typeidか

69 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 09:26:21.49 ]
Dで使用する以下の関数を持つdllの作成について教えてください。dll作成はVisualStudio2010(32bit)を利用します。
現状以下の手順でdllを作成&使用していますが、関数呼び出し時object.Error: Access Violationとなってしまいます。
どこかおかしいところがあれば指摘お願いします。

以下手順です
【1.dll作成】
--- xxx.c ---
__declspec(dllexport) int __stdcall func(int (*f)(int, int), int x, int y);
int __stdcall func(int (*f)(int, int), int x, int y){  return f(x, y);}

【2.implibでxxx.libを作成】
implib /system xxx.lib xxx.def
---xxx.def---
LIBRARY "xxx.dll"
EXPORTS
_func@12

【3.dソースで利用】
dmd src.d xxx.lib
--- src.d ---
extern(System){
int func(int function(int, int) f, int x, int y);
int f0(int x, int y){return x + y;}
}
void main(){
  func(&f, 1, 2); // object.Error: Access Violation
}

70 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 09:28:30.65 ]
訂正
x func(&f, 1, 2); // object.Error: Access Violation
○ func(&f0, 1, 2); // object.Error: Access Violation

71 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 09:51:13.09 ]
xxx.cのfuncの引数のfにも__stdcallをつければ通る

72 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 10:08:47.76 ]
>>71
どうもです。動きました。

73 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/11(土) 11:32:33.86 ]
Wonders ver.1.05
https://github.com/katahiromz/wonders
katahiromz.web.fc2.com/d/wonders.html
wincodec, dispdib, wownt{16,32}, directx/{d2derr,dxgiformat,
d2dbasetypes,d3d10_1,d3d10sdklayers,d2d1,d2d1helper,
d3d10_1shader,dcommon,dwrite,d3dcommon,id3d10blob}を追加。
mswsock, winsock2: バグ修正。

74 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/11(土) 11:41:55.14 ]
GUID定数は、externじゃなくて値埋め込みの方がいいかな?

75 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/11(土) 12:13:11.06 ]
構造体は、クラスで継承できなかった。

76 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 12:23:02.22 ]
個人の日記帳

77 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 13:10:27.52 ]
twitterだな



78 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 13:20:54.73 ]
うん

79 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 13:51:36.12 ]
githubに登録したんだから使う人はそっち見るだろう
失礼だけど需要のほとんど無いライブラリのリビジョンが上がる度に書き込むのはどうかと思うよ

80 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 17:38:07.15 ]
値型のconst変数の存在価値がわからない
immutableかenumでいいじゃん

81 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 19:41:07.36 ]
ポインタがあるからじゃ?

82 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 22:13:54.70 ]
>>75
次は関数パラメータのconst対応行ってみようか


83 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 22:19:46.85 ]
鬼が居るw

84 名前:デフォルトの名無しさん mailto:sage [2012/08/11(土) 23:02:36.64 ]
IDEも作ってもらわなきゃ困る
なんかもう色々と最強なやつな

85 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 00:09:07.60 ]
現状だとVisualDの開発に参加するのが一番だろうね

86 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 00:43:23.84 ]
変数の中身をちゃんと見られるようになれば・・・

87 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 00:48:57.50 ]
どうも動きを見てると
Release版の静的ライブラリを読み込んでいる部分が展開されないような雰囲気



88 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 01:57:47.08 ]
ここのスレの住人はD言語の成長を暖かく見守ってるようでいいな
他の言語のスレは自分が使ってる言語をクソ糞言ってて気が滅入ってくるよ…

89 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 02:04:11.04 ]
まあアレだ
食う前に十分太らせないと
肉の旨いもマズいも無いってな

90 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 02:05:08.76 ]
ていうか、ある意味ではあんま変わらんよね。
クソ!(歓喜)みたいな。

91 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 02:18:00.42 ]
>>88
!!!D言語に欠点など無いからだ!!!!

92 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 07:30:06.05 ]
こんなインファイトの殴り合いをかけてくるクソがあるかッ!

93 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 11:26:50.74 ]
www.kmonos.net/alang/d/struct.html
>構造体にデストラクタのあるフィールドを持たせることはできません。

え?!

dlang.org/struct.html
>Unions may not have fields that have destructors.

なんだ共用体か・・・

94 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 11:34:11.21 ]
残念ながら・・・

95 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 12:27:37.70 ]
共用体のメンバごとにデストラクタ呼んでたらえらいことになるなw

96 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 12:37:53.11 ]
Dのデストラクタの信用ならなさは異常

97 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 12:57:56.04 ]
初歩的な質問なんだけど,プログラムを終了するときってどうすればいいんだ?
例外が発生したら writeln(ex); した後に自分を終了したいんだけど。
core.Runtime.terminate(); を使えばいいのかな?




98 名前:デフォルトの名無しさん mailto:sage [2012/08/12(日) 13:21:06.55 ]
Cの関数は普通に使えるんでstd.c.process.exitもあるし、
あるいはmainまで伝播させてreturnとか。

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

これは逆やね

200 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 22:15:41.39 ]
C言語のライブラリから
char* hoge();
を文字列として引っ張ってきたいのですが、そのままだと文字のポインタのような感じになってるみたいです。
文字列のように持ってくる何かいい方法は無いでしょうか

201 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 22:53:42.86 ]
D言語だって文字の配列だよ

202 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 22:56:05.46 ]
hoge().to!string();

203 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 22:56:06.23 ]
ポインタから勉強しなおしてto!stringしろ

204 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 22:57:25.06 ]
メモリリークの予感しかしない

205 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:00:16.96 ]
>>200
char* p = hoge();
string s = p[0 .. strlen(p)].idup;
というのが一番簡単かな

Cライブラリで確保されたメモリは
GC管理下に無いからコピーした方が扱いやすいと思う
自分で管理出来るならidupしないでキャストしてもいいのかな

206 名前:205 mailto:sage [2012/08/24(金) 23:01:55.61 ]
あ、toで行けるのかスマン知らなかった
to賢いな

207 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:08:16.61 ]
>>200はポインタに対しての理解度があやしいので
その関数がmallocしてくるのかstaticな領域を返すのか確認した方がいいです



208 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:09:35.25 ]
>>206
isたんもかわいいお

209 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:22:48.60 ]
>>208
toro.2ch.net/test/read.cgi/tech/1320314325/

210 名前:200 mailto:sage [2012/08/24(金) 23:40:17.15 ]
hoge().to!string();
ですね。

関数内で作成した文字列は危険だから返すな!
予めメモリを確保した所から文字列としてchar*を返す分には問題ない。

とかそういう感じですかね?
ご指摘ありがとうございます。ちゃんと手直ししました。

色々とありがとうございます。

211 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:43:42.83 ]
要するにmallocしたらfreeしろってことだよ

212 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:47:41.56 ]
ぼくのアナルも排便した後は女の子に舐め取ってもらいたい!

213 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:49:28.53 ]
その後はすかさずベロチューか?
お前とはうまい酒が飲めそうだ

214 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:53:40.52 ]
ハードコアだな

215 名前:デフォルトの名無しさん mailto:sage [2012/08/24(金) 23:56:57.30 ]
マゾしかいないのかと思ったらスカトロマニアも多いとは……。
趣味がが増えたよ! やったねたえちゃん!

216 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 01:04:46.58 ]
D言語のマスコットでエロゲ作ろう

217 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 01:06:23.59 ]
そこはマスコットと言わず高クオリティーで頼む



218 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 01:53:04.54 ]
ボコォ

219 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 13:24:47.03 ]
classインスタンスのアドレスを取るときって↓で良い?
あとこういうのってどこに仕様書いてありますか

C c = new C;
cast(void*)c

220 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 17:24:59.46 ]
ttp://www.kmonos.net/alang/d/class.html
> クラスオブジェクトは参照によってのみインスタンス化されます。

221 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 19:33:51.34 ]
ありがとうございます。
そこは見たのですが、その「参照」は何もラップされていないアドレスと考えて良いんですか?

222 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 20:11:51.25 ]
TypeInfo_Classがあるだろう。

223 名前:デフォルトの名無しさん mailto:sage [2012/08/25(土) 20:33:19.69 ]
>>219それで合ってるよ

224 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 02:18:07.74 ]
&thisとかはスコープ外れた時に使えなくなるみたいなんだけど
どっかでポインタ用の変数を自動生成してるってこと?

225 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 02:27:41.88 ]
thisは変数だし、&thisは変数へのポインタなんだから当たり前だろ。

226 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 02:38:20.51 ]
ん?じゃあ外部で生成されたクラスのアドレスを
クラスの内部から取得する場合にはどうすればいいの?

クラスが生成されてる間に、アドレスの形で保持しておいて
スコープが外れても色々な所で使い回したいとかそういうケースなんだけど

227 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 03:03:57.14 ]
クラス内のthisも参照だけどそのへんわかってる?



228 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 04:01:17.55 ]
多分よく分かってません
thisは、Classへのアドレス?
&thisは、Classへのアドレスを記憶するために変数が用意される感じ?
とか、そんな感じで混乱してます

229 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 10:10:20.29 ]
thisはクラスのインスタンスを指す参照変数で、&thisはその参照を指すポインタを得る。
参照変数の内容にはポインタを含むから、&thisはポインタのポインタになるってわけ。

230 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 10:12:39.89 ]
s/ポインタ/アドレス/g

231 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 12:10:55.47 ]
>>226
そういう場合に>>219を使う。
thisからアドレスを得たいなら cast(void*)this でいい。

232 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 14:04:30.06 ]
基本的には>>219でいいけど、CがopCastを定義していると動かない
もうちょっとよいやり方はこちら

C c = new C;
void* p = *cast(void**)&c;


233 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 15:43:06.33 ]
Dのマスコット作ってる暇があるなら
ウォルタくんはこういうややこしい部分を図解してやればいいのになw

234 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 16:20:28.86 ]
ややこしいのか・・・?

235 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 16:53:50.45 ]
クラスのアドレスって何に使えるんだろう?

236 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 17:11:05.96 ]
memsetとかか。ガクブル。

237 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 17:50:18.80 ]
SetWindowLongしたりemplaceしたインスタンスをfreeするのに使ったり



238 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 00:00:18.60 ]
リンカが出す「Error 32: Data Outside Segment Bounds : _DATA」ってエラーはどんな意味なんだい
何をすれば解決するのかさっぱりで

239 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 03:18:43.15 ]
みんなのおかげで次のステップに移ることができたよ
ありがとう

240 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 07:03:55.03 ]
>>238
align絡みだと思う
こっちでは
align(1) struct S {...}
みたいなのがあると出た

struct S {align(1): ... }
なら問題無しみたい

241 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/27(月) 20:08:06.06 ]
Warning 178: .LIB pagesize exceeds 512

助けて! -L/PAGESIZE:1024を付けてもダメだった。

242 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/27(月) 20:37:29.03 ]
ライブラリが大きすぎるということか? でも二つに分けたくないな。

243 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 20:43:50.09 ]
単純な数値定数はconstではなくenumにすると、シンボルが出力されないからライブラリサイズが減るかも。

244 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 21:38:26.40 ]
OPTLINKを甘く見るな
吐いてるエラーメッセージが真実とは限らない

245 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 23:03:47.65 ]
2.060でalign属性がいかれちまってるんですが、
これはD言語erにとって大したことない感じなの?

246 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 23:18:38.10 ]
なに、ちょっとした崩壊的変更だ
一日ちょっと楽しめたぜ

247 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 23:53:42.34 ]
align(1)が変更つうかぶっ壊れてる気がするんですが、変更なの?



248 名前:デフォルトの名無しさん mailto:sage [2012/08/27(月) 23:56:21.38 ]
struct S {align(1): ...}
でサイズが計算と合わない

249 名前:デフォルトの名無しさん [2012/08/28(火) 01:21:00.19 ]
d.puremagic.com/issues/show_bug.cgi?id=8377
うぉるたんが disastrous bug って言ってるヤツかな
緊急リリースが出るかと思ってたけど出ない

250 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 06:30:28.64 ]
こういう話を見るたびに思うんだけど
Dがつく単語をわざと選んでんのかな

251 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 10:10:20.94 ]
選んでるかまでは知らんが
破壊とか崩壊とか解体とか災厄とか絶望とか、
その手の単語はラテン語源のことが多いけど、
そっちで接頭辞 de- とか dis- とかがつく単語で表現されてるもんだからもともとDで始まる単語が多い

252 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 10:23:28.24 ]
destroy

253 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 11:39:10.70 ]
dildo

254 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 19:18:25.79 ]
dragonic change

255 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 20:15:31.49 ]
"D"にこれ程深い意味があったとは

256 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 20:46:15.28 ]
Dragon → Dlagn → D lang

257 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 21:06:46.87 ]
>>248
align(1) struct S{ align(1): ... }



258 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 21:25:16.15 ]
Dのあのマスコットはドラゴンなのか?

259 名前:デフォルトの名無しさん mailto:sage [2012/08/28(火) 22:33:55.88 ]
Dの意思

260 名前:デフォルトの名無しさん mailto:sage [2012/08/29(水) 03:17:30.61 ]
The D like a mascot is a Doughnut.
You can eat it everywhere.

261 名前:デフォルトの名無しさん mailto:sage [2012/08/29(水) 04:09:05.33 ]
void main()
{
import std.stdio;
"hello, world".writeln();
}


> a.d(4): Error: undefined identifier 'writeln'

           ___   ━┓
         / ―  \  ┏┛
        /  (●)  \ヽ ・
       /   (⌒  (●) /
       /      ̄ヽ__) /
.    /´     ___/
    |        \
    |        |

262 名前:デフォルトの名無しさん mailto:sage [2012/08/29(水) 04:10:47.72 ]
なんだそのエラーメッセージwもっと言うことあるだろ

263 名前:デフォルトの名無しさん [2012/08/29(水) 13:40:06.45 ]
>>261
d.puremagic.com/issues/show_bug.cgi?id=6185
仕様。フリー関数じゃないとダメってどこかで見た気がする

だがしかし関数内のインポートはバグだらけだから避けるのが吉

264 名前:デフォルトの名無しさん mailto:sage [2012/08/29(水) 22:32:14.61 ]
そうかー
関数内インポートは控えておくかな

265 名前:デフォルトの名無しさん mailto:sage [2012/08/29(水) 22:33:24.43 ]
昨日>>261見て関数内で使えることを知って張り切って関数内import入れまくった後なのに・・・

266 名前:デフォルトの名無しさん mailto:sage [2012/08/29(水) 23:12:02.70 ]
imporせずに関数使いたいことが稀によくある
デバグのためにpragma(msg)やる時とか

267 名前:デフォルトの名無しさん mailto:sage [2012/08/30(木) 03:16:30.64 ]
え、インポなの!?



268 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/30(木) 12:32:22.03 ]
「Unexpected OPTLINK Termination」で見事にこけた。
d.puremagic.com/issues/show_bug.cgi?id=6144
バグだらけだな、こりゃ。

269 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/08/30(木) 12:52:06.69 ]
#define HANDLE_MSG(hwnd, message, fn) \
case (message): return HANDLE_##message((hwnd), (wParam), (lParam), (fn))

これをD言語に翻訳するとどうなる?

270 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/30(木) 12:57:45.60 ]
Unexpected OPTLINK Termination at EIP=00402C5C
EAX=0000027C EBX=0052A2F8 ECX=00000001 EDX=00039FFF
ESI=02ED3083 EDI=00003D84 EBP=00000006 ESP=0012FF48
First=00402000

271 名前:デフォルトの名無しさん mailto:sage [2012/08/30(木) 13:16:15.89 ]
OPTLINKはD言語最大の癌

272 名前:デフォルトの名無しさん mailto:sage [2012/08/30(木) 14:10:35.23 ]
Linuxばんじゃーい!!!

273 名前:デフォルトの名無しさん mailto:sage [2012/08/30(木) 14:12:25.30 ]
gdcがんばれー><

274 名前:デフォルトの名無しさん mailto:sage [2012/08/31(金) 05:36:40.54 ]
HANDLE_MSG(m_hWnd, WM_CLOSE, Cls_OnClose);

case WM_CLOSE: return HANDLE_WM_CLOSE(m_hWnd, lParam, wParam, Cls_OnClose);

275 名前:デフォルトの名無しさん [2012/08/31(金) 17:52:40.07 ]
文字列ミックスインで頑張ってここまではできた

switch (msg) {
mixin(
makeHNDR!(hwnd, WM_MSG1, "handler1")() ~
makeHNDR!(hwnd, WM_MSG2, "handler2")() ~
""
);
default:
}

ideone.com/oNThI

276 名前:デフォルトの名無しさん mailto:sage [2012/08/31(金) 21:55:06.72 ]
汚いなぁそれやるなら公式で紹介されてるcond使えし

277 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/08/31(金) 22:32:48.67 ]
>>275
有り難う。いい方法見つかった。



278 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/09/01(土) 17:37:01.86 ]
GDCでスタティックライブラリを作る方法、教えて。

279 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/01(土) 17:50:07.41 ]
「ar rv ライブラリ オブジェクト」でいいのか?
エラーがでるけど。


280 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/01(土) 18:03:05.77 ]
GDCでd2hello.exeがビルドできるようにしてください。お願いします。
dl.dropbox.com/u/72753355/wonders-beta.zip

281 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 18:33:27.50 ]
そういうのはtwitter使ったほうが早いよ

282 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/01(土) 18:39:22.97 ]
>>281 twitter反応がない。。。つぶやき方が悪いのか

283 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 19:07:27.04 ]
つぶやきシローみたいなノリでいくといいよ

284 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 19:55:25.84 ]
質問するときは #dlangつけれ

285 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 20:14:49.10 ]
さすがにそれはやってるだろう

286 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 20:32:44.54 ]
D言語disりつつ質問すれば、反応はしてくれるはず

287 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/09/01(土) 20:33:10.08 ]
C:\crossdev\gdc\v2\build\i686-pc-mingw32\libphobos/../../../gcc-4.6.1/libphobos/
core/sys/windows/windows.d:2780: multiple definition of `MAKEINTRESOURCEA@4'
libWonders7Wide.a(winuser.o):winuser.d:(.text+0x10): first defined here

元から有るライブラリと重複しているみたいだな。
libphobosをリンクしない訳にもいかないし。



288 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 20:53:37.13 ]
D言語に関連してる限りはここでもいいんじゃないの
他の言語と違ってエラーメッセージがコンパイラ側のバグとかもよくあるし。
全く関係無くしゃしゃり出てたらさすがに余所でとか言いたくなるけどそういうわけでもなさそうだし。

289 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 20:55:31.57 ]
>>287
いや、普通に考えてwindows.hの代替ライブラリ作ってるなら
core.sys.windowsとかをimportしちゃ駄目でしょw

290 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/01(土) 20:57:00.66 ]
>>287 関数名変えて、aliasつけて解決した。

291 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 21:01:15.91 ]
>>289
プログラミング初心者レベルだな…

292 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/01(土) 22:13:13.80 ]
>>289 そんなものをimportした覚えはないが

293 名前:デフォルトの名無しさん mailto:sage [2012/09/01(土) 22:14:41.11 ]
もしかしてWinMainとか使ってたり
なわけないか

294 名前:デフォルトの名無しさん [2012/09/02(日) 12:39:24.76 ]
phobos の中でこっそり public import して"感染"状態を引き起こす奴がいる
潜在的にバグと言っていいんじゃないかな

それと、大きめのプロジェクトで -g(デバッグシンボル) をつけると OPTLINKがゴネることがある

295 名前:デフォルトの名無しさん mailto:sage [2012/09/02(日) 22:30:19.52 ]
これはどういうこと?

dmd con.d
→Error: cannot read file con.d

mv con.d co.d
dmd co.d
→OK

296 名前:デフォルトの名無しさん mailto:sage [2012/09/02(日) 22:46:35.08 ]
void main()
{
  class Base{}
  class Derived : Base{}
  alias Base delegate(Base) P;

  P p1 = (Base b) => new Base; // ok
  P p2 = (Base b) => new Derived; // ok
  P p3 = (Derived b) => new Base; // NG
  P p4 = (Derived b) => new Derived; // NG
}

p3, p4はいつできますのん

297 名前:デフォルトの名無しさん mailto:sage [2012/09/02(日) 23:01:22.48 ]
Derivedしか受け付けない関数にただのBase渡せちゃうからダメじゃないの?



298 名前:デフォルトの名無しさん mailto:sage [2012/09/02(日) 23:23:09.92 ]
イベントハンドラに使いたいんだけど無理かぁ・・・

299 名前:デフォルトの名無しさん [2012/09/03(月) 01:01:54.87 ]
>>295
たぶんOSの予約デバイス名に引っかかってる

300 名前:デフォルトの名無しさん mailto:sage [2012/09/03(月) 01:49:11.93 ]
そういや、CONCONバグとかあったよな。ああ懐かしき9x…

301 名前:デフォルトの名無しさん mailto:sage [2012/09/03(月) 02:55:40.08 ]
Call of Duty だな

302 名前:デフォルトの名無しさん mailto:sage [2012/09/03(月) 11:36:04.87 ]
納得いかねー!!
d.puremagic.com/issues/show_bug.cgi?id=502

↓こういうアホライブラリは一体どうしてくれよう…
setXXX はないけど getXXX に final つけちゃった☆

303 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/04(火) 14:56:22.65 ]
codepad.org/xa1mI004
codepadのDコンパイラって古いんですね。

304 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/04(火) 15:05:15.38 ]
GDCもバグだらけ。やってられない。
https://bitbucket.org/goshawk/gdc/issue/359/internal-compiler-error-in-toctype-at-d-d
D言語やめよっかな?

305 名前:デフォルトの名無しさん mailto:sage [2012/09/04(火) 15:13:18.79 ]
かまってちゃんきたー

306 名前:デフォルトの名無しさん mailto:sage [2012/09/04(火) 15:30:22.90 ]
D2が安定してもどうせD3で破壊的変更が繰り返されるのでそれに付いて行く覚悟のない奴はさっさとやめればいいよ

307 名前:デフォルトの名無しさん mailto:sage [2012/09/05(水) 01:13:40.58 ]
>>304
やめるなんて勿体ない
そこまでの開発意欲があるのなら
コンパイラのバグ退治もしながら言語にも良い影響を与えてやってくれ



308 名前:デフォルトの名無しさん mailto:sage [2012/09/06(木) 08:08:40.62 ]
最初だけ食いついて飽きたらポイしたのに俺のおかげでDは成長したみたいな顔してる人も居たような居なかったような
継続してなんかやってくれてる人はありがたい

309 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/06(木) 13:58:19.14 ]
>>304のバグが修正されるまで、Wondersの開発を中断します。

310 名前:デフォルトの名無しさん mailto:sage [2012/09/06(木) 20:38:56.38 ]
チェンジログに大量に追記されているのに気づいた。
でもこのままだと公式ドキュメントに反映されないっての…どうすんのさ
https://github.com/D-Programming-Language/druntime/commit/a9c2c6ca76e8a1767759cc7c642924c2ee57330e

311 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 01:28:05.11 ]
ttps://github.com/D-Programming-Language/dmd/pull/1099
だれかこのおっさん止めてー

312 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 06:37:33.79 ]
>>311
assertが有効になってるかどうかでの分岐だろ
あって困るようなもんでもないと思うが…

313 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 10:33:16.99 ]
`assert({
/* ... */
return true;
}());

これで十分。

314 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 11:42:20.78 ]
そういえば version (release) がないと
assertに対応する条件コンパイルは書けないんだったな

そっちの方が潰し柿食うと思うんだが

315 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 15:32:21.43 ]
>>311
なんてこった、敵の動きは早いぞ!

dlang.org/version.html#PredefinedVersions

316 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 16:52:17.06 ]
D_NoBoundsChecks
これ?
これがどうしたの?

317 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 19:15:49.71 ]
もはやコンパイルオプションでversion出来たらいいよねってレベル



318 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 20:58:13.07 ]
version (is > 3.141)
こんな感じ?

319 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 22:23:45.20 ]
@property以外は引数なくても括弧省略できなくなった理由ってなんなんですか?
って、あれ?
今試したらかっこつけなくても怒られなくなってる。
元からそうだっけ?

320 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 00:16:13.87 ]
-property enforce property syntax

321 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 00:55:19.90 ]
なるほど

322 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 18:07:27.84 ]
trunk見てると Win64の文字が舞い踊って次のリリースが楽しみだ

たぶん全く関係ないところにも大量のreg(ry

323 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 18:21:07.23 ]
Win64で3Dポリゴンの演算能力が!

324 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 19:39:30.27 ]
いやしかしCPUが64になってもポリスペックはGPUに依存するんじゃないか

325 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 20:13:55.89 ]
ニンテンドー64の話をしてるんだわさ!

326 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 23:11:14.11 ]
いや、今まで「OPTLINKの制約でゴニョゴニョ…」と先延ばしにされてきた問題が
一挙に解決…!! するはず

てかリンカのソースマダー? チン、チン

327 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 04:34:40.90 ]
ランカ・リー?



328 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 16:58:30.88 ]
D言語で動的ジャグ配列ってどうやるの?
↓?
int[/*a3*/][/*a2*/][/*a1*/] a = new int[a1][a2][a3];

329 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 17:04:15.96 ]
他の言語と同じように↓みたいにはできるのですが、もっとシンプルにはならないでしょうか
a = new int[][2];
a[0] = new int[3];
a[1] = new int[3];

330 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 18:39:07.37 ]
www.kmonos.net/alang/d/expression.html#NewExpression
int[][][] bar = new int[][][](5,20,30);

331 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 21:29:35.62 ]
>>330 了解

332 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/09/12(水) 14:27:44.82 ]
gdc.exe -v2 -c -frelease -finline-functions -O3 -fweb -Wall
-fversion=Unicode -fversion=Windows7 -m32 -fversion=WondersBuild
-o wonders\commctrl.o wonders\commctrl.d
gdc.exe: error: unrecognized option '-v2'
何なんだこれは?

333 名前:デフォルトの名無しさん [2012/09/12(水) 15:01:17.89 ]
gdc.exeさんは言いました:
-v2 って何の事? ボクチャン、ワカンネ

334 名前:デフォルトの名無しさん mailto:sage [2012/09/12(水) 19:07:03.20 ]
assaultかbusterをつけろ

335 名前:デフォルトの名無しさん mailto:sage [2012/09/13(木) 02:00:15.68 ]
https://bitbucket.org/goshawk/gdc/wiki/UserDocumentation
-fd-version=1

D2にしたいの? デフォルトでそうなってるっぽい
動かして確かめたわけじゃないけど…

336 名前:デフォルトの名無しさん [2012/09/13(木) 11:19:46.12 ]
>>334
ガンヲタ乙

337 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/13(木) 13:17:04.60 ]
>>335 ありがとう!



338 名前:デフォルトの名無しさん mailto:sage [2012/09/13(木) 23:08:33.78 ]
公式でD言語に追加されそうな話が出てる機能ってどんなのあります?

339 名前:デフォルトの名無しさん mailto:sage [2012/09/14(金) 01:05:03.76 ]
64bit win

340 名前:デフォルトの名無しさん mailto:sage [2012/09/14(金) 01:37:19.97 ]
filterの返すrangeってlength持ってないんだっけ

import std.stdio;
import std.algorithm;
void main()
{
  auto a = [1, 2, 3, 4, 5];
  writeln(a.filter!(n=>n&1)().length); // Error: undefined identifier 'length'
}

341 名前:デフォルトの名無しさん mailto:sage [2012/09/14(金) 01:42:21.91 ]
長さ決まってたら遅延評価っぽいことできないじゃん。逆だけど

342 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/09/14(金) 12:21:07.01 ]
Wonders64ビット対応したよ。GDCで-fd-version=1をつけるとエラーが出てくる。何で?

gdc.exe -fd-version=1 -c -frelease -finline-functions -O3 -fweb -Wall -mwin32 -
fversion=Unicode -fversion=Windows7 -m32 -fversion=WondersBuild -o wonder
s\basetsd.o wonders\basetsd.d
c:\mingw64\include\d2\4.6.1\object.di:27: function declaration without return ty
pe. (Note that constructors are always named 'this')
c:\mingw64\include\d2\4.6.1\object.di:27: no identifier for declarator immutable
(char)

343 名前:デフォルトの名無しさん mailto:sage [2012/09/14(金) 19:16:46.19 ]
エラーメッセージだけ出して丸投げすんな

344 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 00:10:06.46 ]
>>341
ああ・・・length如きで停止しないプログラムになったら困るよね・・・

↓これって結果が違うのは仕様なんですか?
import std.stdio;
void main()
{
  writeln(typeid(typeof(()=>1)));
  writeln(typeid(typeof(()=>{return 1;})));
}

結果
int()*
int()*()*

345 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 00:11:47.01 ]
ラムダ式にデリゲートあるんだからそれが正常

346 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 00:56:00.68 ]
なるほど{}が関数リテラルと判断されてるのね

347 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 01:21:14.69 ]
writeln(typeid(typeof((){return 1;})));
でいいのよ?



348 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 01:33:21.25 ]
俺も前それでハマったな
それでこのスレに書き込んだっていう

349 名前:片山博文MZボット ◆0lBZNi.Q7evd mailto:sage [2012/09/15(土) 11:31:42.00 ]
>>343 エラーメッセージ以外に何を出せばいい?

350 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 13:06:47.53 ]
何より速さが足りない

351 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 14:22:32.04 ]
>>349
エロ画像

352 名前:デフォルトの名無しさん mailto:sage [2012/09/15(土) 15:42:16.58 ]
いっとくけどめんくいだから美少女の顔が毛穴まで見えるほどのサイズのモザなしフェラ画像じゃないと答えん

353 名前:デフォルトの名無しさん [2012/09/15(土) 17:31:32.01 ]
dlang.org シボンヌ

354 名前:片山博文MZボット ◆0lBZNi.Q7evd [2012/09/16(日) 20:25:07.03 ]
>>350
何をお急ぎ? 要望あらばやがて果たしたし候。

355 名前:デフォルトの名無しさん mailto:sage [2012/09/16(日) 23:30:58.98 ]
optlinkさえ、optlinkさえ真っ当なら-gつきコンパイルでライブラリの深淵のエラー箇所を特定できるものを…

356 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 00:33:58.62 ]
optlinkちゃんのgスポットは俺が独占して開発できるのだ
他の人には触らせないのだ

357 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 15:19:57.82 ]
エラーが何も出ていないのにexeが作成できていない現象出たことあるひとアドバイスplz



358 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 15:50:04.13 ]
リンクに失敗したとかでなくまったく何も出てない?

359 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 15:57:11.38 ]
まったくメッセージがでないんだ・・・
dmdのコマンドラインには存在するソースファイル名の他にオプションとか全然指定してないし
わけが分からないよ・・・

360 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 16:03:47.11 ]
うーん、実はなんか違うえたいのしれないdmdを呼び出してるとか?
whichは…Windowsにはないよなぁ

361 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 16:14:41.35 ]
関数一個削ったらコンパイル通ったったった・・・
もともと文法エラーで通らない関数なんだけど
それがあると何もメッセージなしでコンパイル終了、exeが出来ない
ないとコンパイル通ってexeが出来る

問題の関数で現象が発生する最小コードが分からないんだけど構造は大体こんなでした
Tuple!(bool, 構造体) func()
{
        : 処理
    return Tuple!(true, 構造体インスタンス); //コーディングミス
}

362 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 17:00:03.01 ]
エラーメッセージすら出せずに落ちるバグがdmdに?

363 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 22:27:50.74 ]
質問です。
数値の範囲を逆順foreachするうまい方法ばありますか??

foreach(i; 0..5) ←●これを逆順走査したい

foreach(i; 5..0) ←×ループされない
foreach(i; iota(0, 5).reverse) ←×iotaはreverse出来ない
foreach(i; iota(4, -1, -1)) ←×[4〜-1)は[0..5)と見た目が違いすぎて直感的じゃない
for(auto i = 4; i >= 0; i--) ←×出来れば見た目がすっきりしたforeachを使いたい

今のところ以下が良いかと思ってるのだけれどこれよりすっきりした方法ってありますか?
foreach(i; iota(0, 5).array.reverse)

364 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 23:06:31.07 ]
foreach_reverse

365 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 23:38:00.03 ]
な、なんだってーーー Ω ΩΩ
うわ、本当だ…恥ずかしい

foreach_reverseなんてopApply時代の化石くらいにしか思っていませんでした。。

366 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 23:51:41.60 ]
なにげに役に立つんだよねforeach_reverse

367 名前:デフォルトの名無しさん mailto:sage [2012/09/17(月) 23:56:15.14 ]
レンジに対してでいいならretroでいいと思うけどね



368 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 10:02:22.02 ]
foreach_reverseが消えるとかいう話はどうなったの

369 名前:デフォルトの名無しさん mailto:sage [2012/09/18(火) 21:21:11.48 ]
いいね
foreach(i; iota(0, 5).retro)

370 名前:デフォルトの名無しさん mailto:sage [2012/09/19(水) 09:06:49.13 ]
Effective D 第1項 「forではなくforeachを使おう」






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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