D言語なら俺に聞けat TECH
D言語なら俺に聞け - 暇つぶし2ch1:デフォルトの名無しさん
05/02/12 10:35:10
D言語一筋で10年ほど勉強しました。
D言語のことなら知らないこと意外ならすべてわかる。
だからなんでも聞いてくれ。
ただし、プライベートなことには答えられねーぞ

2:デフォルトの名無しさん
05/02/12 10:46:16
好きな色はなんですか?

3:デフォルトの名無しさん
05/02/12 11:16:53
そちらは晴れですか?

4:デフォルトの名無しさん
05/02/12 12:33:40
きのう牛丼食った?

5:デフォルトの名無しさん
05/02/12 13:55:41
>>4
売り切れでしたから!残念!!

6:デフォルトの名無しさん
05/02/12 14:36:18
>>1
漏れもDのことなら知らないこと以外なんでもわかるな。
>>4
車で突っ込んだり、売り切れだって切れたり、すでに発症してる人たちもいるようで・・・

7:デフォルトの名無しさん
05/02/12 16:01:21
>>1
D言語ができたのはいつですか?

8:デフォルトの名無しさん
05/02/12 20:11:21
関連リンク
URLリンク(f17.aaa.livedoor.jp)

9:デフォルトの名無しさん
05/02/12 20:21:06
注意↑グロ画像

10:デフォルトの名無しさん
05/02/12 20:23:26
>>8 ワロタ

11:デフォルトの名無しさん
05/02/12 20:37:15
>>8
やべぇ…

12:デフォルトの名無しさん
05/02/12 20:51:09
>>8 キモイ

13:デフォルトの名無しさん
05/02/12 23:40:23
>>8-12
自演乙


時に連想配列にnull代入すると初期化されるんだが、
仕組み教えてくれ。

14:デフォルメの名無しさん
05/02/22 14:06:49
D言語のコンパイラはデフォルトで全てのAPI使えねえから
俺には無理だというところがむかつくぜ。
>>1は10年間は嘘だろう!さすがに。
そんな嘘吐き>>1を叩く!!徹底的にな!!

15:デフォルトの名無しさん
05/02/22 19:26:51
関連リンク その2
URLリンク(kur0nek0.web.infoseek.co.jp)

16:デフォルトの名無しさん
05/02/22 19:44:20
↑エロ

17:デフォルトの名無しさん
05/02/22 20:40:05
>>16
エロは19話。

18:デフォルトの名無しさん
05/02/22 21:54:55
クラス図
URLリンク(www.tiduru.sytes.net)

19:デフォルトの名無しさん
05/02/22 23:13:41
>>18それはhtmlファイルだろ。

20:デフォルトの名無しさん
05/02/22 23:14:34
>>18
画像じゃないね。

21:デフォルトの名無しさん
05/02/23 11:09:38
>>18
トロイの木馬を検出しますた

22:デフォルトの名無しさん
05/02/23 21:55:21
ワクチンソフトが必須だと思った瞬間

23:デフォルトの名無しさん
05/02/23 21:58:14
D言語作者
URLリンク(image.mycure.net)
D言語作者 その2
URLリンク(image.mycure.net)


24:デフォルトの名無しさん
05/02/23 22:27:21
>>18-22
61.194.13.120 ってどこ?

25:デフォルトの名無しさん
05/02/23 22:51:54
jpnicの検索結果

61.194.13.120

InfoSphere (株式会社NTTPCコミュニケーションズ) (InfoSphere (NTT PC Communications, Inc.))
SUBA-029-377 [サブアロケーション] 61.194.13.0
有限会社 グローバルホステリングサービス (Global Hosting Service)
GHS-HOST0001 [61.194.13.112 <-> 61.194.13.127] 61.194.13.112/28



26:デフォルトの名無しさん
05/02/24 00:16:45
>>25
URLリンク(www.tiduru.sytes.net)
の中にそのアドレスいっぱい書かれてるね


27:デフォルトの名無しさん
05/02/24 00:33:03
失せろ

28:デフォルトの名無しさん
05/03/04 12:47:43
ヘイ!ユー!!

29:デフォルトの名無しさん
05/03/04 23:30:26
1のたこやろう!!

30:デフォルトの名無しさん
05/03/04 23:34:53
>1
何歳?10歳?

31:デフォルトの名無しさん
05/03/04 23:37:21
      _,,,,,,,,
     , - ' ゙    `` - 、_,,,,,
   ,r'          /=ミ
  /           彡ll',''´
. /             彡lll
 !-- .、    ,、、、、,,,   彡lノ
 l,,,,,__ /   ___     'r''゙ヽ
. |`゙'' ./   `'゙'''"    .〉,l |
 |.   ,'           //
. ',. ,'           , r'
.  ゙, ゙'ー -`      l  |
   ゙、''゙ ,,、二''-    ノ  l、
''''''''7'ヽ  '''    /   /`〉`゙T''''''''''
  l  ` 、,,,,、- ' "    / /.|  |
.  |  |  .l i       / ./ |  |
  |  |  | l      / ./ .|  |
. |  |   | l     / /  |  |
 |  |   | ',   / /  l  .l
【ゴールデンレス】
このレスを見た人はコピペでもいいので
10分以内に3つのスレへ貼り付けてください。
そうすれば14日後好きな人から告白されるわ宝くじは当たるわ
出世しまくるわ体の悪い所全部治るわでえらい事です

32:デフォルトの名無しさん
05/03/04 23:39:32
今のコンパイラで使えるwindows.dがないみたいなんだが・・・.
実際のところどうなの.
教えてエロい人!

33:デフォルトの名無しさん
05/03/04 23:48:52
あれ,書き込みがこっちにコピペされてるな,してくれたのか.

別スレの方で windows.h あるじゃんという返事をもらったけど,
どういうことか教えてもらえないですか?
自分で変換しろってこと?
ってことは,ないってことでは・・・.

34:デフォルトの名無しさん
05/03/05 00:07:28
ウメ

35:デフォルトの名無しさん
05/03/05 00:11:51
おいおまえら!削除する方向が間違っているぞ。
向こうを本陣にすべきだった。
そのことに関する私の見解。
windows.hあるじゃん
2つダウンロードしたでしょう?
両方検索してみましたか?
だがデフォルトで全てのAPI使えない問題
を突破できずに居る私。

36:デフォルトの名無しさん
05/03/05 00:16:35
というかなんでSAMPLEの分際でコンパイルエラーが出るんだよ!!

37:デフォルトの名無しさん
05/03/05 00:23:36
windows.h と windows.d の区別はされておられるのだろうか?
平行線になるとあれなので一度まとめますね.

windows.dとして日本で有名なのは
URLリンク(hp.vector.co.jp)
ですが,0.111あたり(?)のアップデートでそのままでは使えなくなりました.
そこで,0.115に対応した同程度によい質のものがないのか,という質問でした.
上記のURLにあるやつを修正すればいいのですが,どこがまずいのかわからんのです.
コンパイルは通せたけど,Win32APIのCreate()で作ったウィンドウが表示されないという
トラブルが解決できないので.

38:デフォルトの名無しさん
05/03/05 00:27:32
Create() じゃなくて CreateWindow() だ...

39:デフォルトの名無しさん
05/03/05 00:29:35
ああこのサイト見た事ある。
Win9xを馬鹿にしておいてすぐ謝ってた、実はいい人だ。
これを正しく使うにはフォルダとか構成どうするのですか?
二つの区別はわからないが.hをおしえてと言ってたよ。

40:デフォルトの名無しさん
05/03/05 00:33:21
CreateWindowExの方はどうです?

41:デフォルトの名無しさん
05/03/05 00:45:03
>>40
どっちでも同じでした.
というか,下のGetMessageA()から帰ってきていないような気配が・・・.
引数これじゃまずいのかな.

public void messageLoop()
{
MSG msg;
BOOL bRet;
while(1)
{
bRet = GetMessageA( &msg, cast(HWND)null, 0, 0 );
if(bRet == -1)
{
// handle the error and possibly exit
break;
}
else if(bRet == 0)
{
break;
}
else
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
}

42:デフォルトの名無しさん
05/03/05 00:50:04
GetMessageAはAが必要なら
DispatchMessageもA付ける必要があるんじゃないか?

43:デフォルトの名無しさん
05/03/05 00:51:39
windows.dつかってるならその逆とか
GetMessageAのAを外してみるとか?

44:デフォルトの名無しさん
05/03/05 00:51:46
>>42
はいはい知らん子は黙ってようねヨチヨチ

45:デフォルトの名無しさん
05/03/05 00:53:26
boolなら答えは2つしかなさそうだが。

46:32
05/03/05 00:56:58
>>39
自分は

URLリンク(hp.vector.co.jp)

を\dmd\src\phobos\win32 以下および \dmd\src\phobos\win32\ansi 以下に
windows.d があるように展開して,\dmd\src\phobos に
win32.lib と win32a.lib を置いてる.

そしてソースの冒頭で
import win32.ansi.windows; // std.c.windows.windows; // 正規版は後者
として windows.d その他もろもろを読み込んで,

dmd main.d \dm\lib\Gdi32.lib \dmd\src\phobos\win32a.lib

としてコンパイルしている.


47:デフォルトの名無しさん
05/03/05 00:58:01
>>44は答えを書く気が無いくせをしてしゃしゃり出やがる。

48:32
05/03/05 01:14:59
>>45
URLリンク(www.microsoft.com)
MSDNを見ると3種類の値を返すと書かれています.
でも,これでかと思って int にしてみたけど関係ないみたいですね.
やはり

...
printf("0");
bRet = GetMessageA( &msg, cast(HWND)null, 0, 0 );
printf("1");
...
としたらコンソールには 0 しか表示されないです・・・.

49:デフォルトの名無しさん
05/03/05 01:41:36
念のために聞くけど、
CreateWindow関数呼ぶときにWS_VISIBLEをつける。
またはその後にShowWindow関数呼ぶ。
のどちらかを行ってる?

50:32
05/03/05 01:49:42
>>49
付けてますよ.
なんでだろうなぁ.
以下,一部抜粋.

// ウィンドウクラスの登録
HINSTANCE hInst = GetModuleHandle(null);
WNDCLASS wc;
wc.lpszClassName = "DFRAME";
wc.style = CS_OWNDC | CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = &WindowProc;
wc.hInstance = hInst;
wc.hIcon = LoadIcon(cast(HINSTANCE) null, IDI_APPLICATION);
wc.hCursor = LoadCursor(cast(HINSTANCE) null, IDC_ARROW);
wc.hbrBackground = cast(HBRUSH) (COLOR_WINDOW + 1);
wc.lpszMenuName = null;
wc.cbClsExtra = wc.cbWndExtra = 0;

public void create(char[] inTitle, int inX, int inY, int inWidth, int inHeight)
{
 HINSTANCE hInst = GetModuleHandle(null);
 hWnd = CreateWindow("DFRAME", inTitle, WS_THICKFRAME |
  WS_MAXIMIZEBOX | WS_MINIMIZEBOX | WS_SYSMENU | WS_VISIBLE,
  inX, inY, inWidth, inHeight, HWND_DESKTOP,
  null, hInst, null);
}

51:49
05/03/05 01:57:42
>>50
ん、RegisterClass関数をちゃんと呼んでる?


52:32
05/03/05 01:59:22
>>51
あ,ごめんなさい.
ただの assert() だと思ってわざと消しちゃいました.

...
wc.lpszMenuName = null;
wc.cbClsExtra = wc.cbWndExtra = 0;
assert(RegisterClass(&wc));

これが正しいものです.

53:49
05/03/05 02:06:32
コンパイラオプションに-releaseを加えるとassert文って消えるから、
RegisterClassはassert文の外に出したほうが良いよ。
でも、これが原因じゃないだろうし、分からんなぁ。




54:32
05/03/05 02:10:15
>>49
49さま,それが原因でした(^^;
ありがとうございます.

55:32
05/03/05 02:15:55
てことは,コンパイラが型に厳しくなったために発生した
windows.d のコンパイルエラーを取ったら,ちゃんと動いたと.
そういうことのようです.
お騒がせしました(^^;

56:49
05/03/05 02:19:15
解決したなら良し。
assert文の罠は結構引っかりやすいから、要注意。
......俺もSDL_Init関数で同じ罠にかかった経験あるからな。

57:デフォルトの名無しさん
05/03/05 04:18:14
SDL組み込んだバイナリをデバッガで実行すると、
SDL内部で必ずアクセス違反が出るんだけど、仕様ですか?

58:デフォルトの名無しさん
05/03/05 04:18:47
(普通に実行すると、ちゃんと動いている様には見える。)

59:デフォルトの名無しさん
05/03/05 10:00:38
LinuxのカーネルをDで書き直そうとしようとしてる奴いるか?

60:デフォルトの名無しさん
05/03/05 17:37:38
というかこのスレは1に聞くスレだろ!?

61:デフォルトの名無しさん
05/03/05 21:00:13
>>59
みんな考えることは同じなんだねぇ。。。
ただ、ガーベジコレクションの問題が有って、D自体のソースが公表されないと
難しいと思うんだけど、その辺どうなの?

D側も、OSレベルでアプリケーションのメモリ管理が欲しいと思ってるし、
OS側も、アプリケーションのガベコレを行いたいと思ってる様だけど、
ここに手を付けた人はいないんだよね。。。

D言語という、新しい言語が出来たんだから、だれかが、10年ぶりにピュアに
新しいOSを発表しても面白かろうと思うんだけど、

62:デフォルトの名無しさん
05/03/05 21:22:11

ガベコレ初心者ですか?

63:デフォルトの名無しさん
05/03/05 22:54:27
新しい言語なんか毎年腐るほど産まれているし。

ピュアなのは>61の脳内

64:デフォルトの名無しさん
05/03/06 07:17:55
ピュアに新しいOSだってちょくちょく生まれてるぞ。

65:デフォルトの名無しさん
05/03/06 08:19:59
D言語はピュアな心のモチヌシにしか見えません。

66:デフォルトの名無しさん
05/03/06 15:56:21
今や、ライブラリどころか、勝負はフレームワークやIDEの領域に映ってきてるから、
D言語は来ないだろ…。
言語仕様で勝負する時代はもう10年前に通り過ぎてる。

67:デフォルトの名無しさん
05/03/06 20:28:42
通り過ぎちゃいないだろ。
ただDが凡庸なだけで。

68:デフォルトの名無しさん
05/03/06 20:35:37
VectorCの方が面白そうだよ

69:デフォルトの名無しさん
05/03/07 14:55:59
それただのCコンパイラじゃん

70:デフォルトの名無しさん
05/03/07 15:11:26
タダ!?フリー!?でも今はフリーなだけでは驚かない。

71:デフォルトの名無しさん
05/03/15 16:02:27
スレスト隊長「俺の出番か?」
相談役「まだ早いのかもしれませんよ。」
スレスト隊長「・・・。まあよい。そのうち来るさ。」

72:デフォルトの名無しさん
05/03/16 04:05:30
D言語 Part 6
スレリンク(tech板)

73:デフォルトの名無しさん
05/03/16 23:17:39
スレスト隊長「↑そちらはまじめなDスレだ!」
隊員A「誘導したら駄目と言うことですか?」
スレスト隊長「そうだ。」

74:デフォルトの名無しさん
05/05/08 20:08:53
ここウンコすれ

75:デフォルトの名無しさん
05/05/08 20:11:29
URLリンク(p231.net220148094.tnc.ne.jp)
おkwwwおkwwwwwwwwwっうぇwwwwww
うはっwwwwww

うぇwwwうぇwwwwwwwwww
wっっうぇ
wwwっうぇwwwww




76:デフォルトの名無しさん
05/07/28 19:03:46
この速度ならぬるぽ

77:デフォルトの名無しさん
05/07/28 22:07:09
ガッ

78:デフォルトの名無しさん
05/08/01 21:43:34
D言語スレDat落ちAge

79:デフォルトの名無しさん
05/08/01 21:48:08
うわ、マジで落ちてる。
油断してた。

80:デフォルトの名無しさん
05/08/01 22:07:46
超電磁スピンVの字正拳突きって隠しじゃないよね?

81:デフォルトの名無しさん
05/08/02 23:29:59
本スレがこっちより先に落ちるとかワロスw

82:デフォルトの名無しさん
05/08/02 23:35:06
しょうがないからこっちを本スレにするか。

C, C++, Java, C# などのいいところを取って、さらにいろいろ付け足したような新しい言語。

・Cライクな文法
・実行形式はネイティブコード
・言語仕様のコンパクトさよりも利便性を追求
・さまざまなOSで使える(Windows, Linux, MacOSX, FreeBSD)
・ガーベッジコレクション
・便利な動的配列や連想配列
・契約による設計
・標準ライブラリPhobos

・今のところv1.0未満につき、未実装・バグはまだだいぶある。
・Win32APIを利用できるので、Win32アプリは作成可能。

DigitalMars D言語公式
URLリンク(www.digitalmars.com)
日本語訳
URLリンク(www.kmonos.net)
D Front End for GCC
URLリンク(home.earthlink.net)

前スレ
D言語 Part 6
スレリンク(tech板)

83:デフォルトの名無しさん
05/08/02 23:55:26
スレリンク(tech板)

これは?

84:デフォルトの名無しさん
05/08/03 01:21:20
なんだ、立ったのか。

85:デフォルトの名無しさん
05/08/08 03:45:39
やねうらおさんのライブラリ開発が去年の2月15日でいきなり止まってるけど何かあったんんだろうか…

86:デフォルトの名無しさん
05/08/08 07:37:57
D言語に見切りをつけた。
か飽きた。

87:デフォルトの名無しさん
05/08/08 13:01:37
ガーン

88:デフォルトの名無しさん
05/08/08 15:23:43
つーかあんなダサいライブラリいらない。

89:デフォルトの名無しさん
05/09/25 21:52:32
あの、プログラム初心者なんですけど
クラスの宣言の意味がようわからないので教えてください
a b = new a;
で、どうしてクラス宣言するときnewしないとだめなんですか??
bっていうのはaの型へのポインタなんでしょうか・・・?
今までCしかやったことないのでよくわかりません、助けてください

90:デフォルトの名無しさん
05/09/25 23:10:46
なぜnewしないと駄目なのかという理由は、classはヒープに確保するというのがD言語の設計だから。
ようするにbはaの型へのポインタ(と似たような)物というわけで、その理解で問題ない。

91:デフォルトの名無しさん
05/11/25 23:45:35
std.processをimportしようとしたらエラーでるんだけど、バグ??
linuxなんだけど、どうすればできますか?

92:デフォルトの名無しさん
06/02/14 06:46:36
Dの入門書ない?

93:デフォルトの名無しさん
06/02/14 16:32:28
>>92
今書けばバイブルになる

94:デフォルトの名無しさん
06/02/15 01:17:04
>>92
D言語パーフェクトガイド―Windows Linux FreeBSD対応
URLリンク(www.amazon.co.jp)



95:デフォルトの名無しさん
06/02/15 01:23:53
そういえばそんなのあったなw

96:デフォルトの名無しさん
06/02/18 23:06:20
あげ

97:デフォルトの名無しさん
06/02/28 09:21:22
サンプルソースがコンパイルできないです。

パスは通したが、未定義シンボルって言われますた

98:デフォルトの名無しさん
06/03/09 00:04:14
phobosをコンパイルしていないからと思われ。


99:デフォルトの名無しさん
06/03/09 04:18:09
>>94
もはや古いよ・・・

100:http://www.vector.co.jp/soft/win95/util/se072729.html
06/03/18 21:46:12
TextSS のWindowsXP(Professional)64bit化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

そういや64bitにネイティブ対応している2chブラウザてありましたっけ?





101:デフォルトの名無しさん
06/04/08 16:36:49
リラテルってオブジェクトと似たようなもんなのか?

102:デフォルトの名無しさん
06/04/08 22:17:29
りてらるりてらるるるるるるー♪

103:デフォルトの名無しさん
06/04/10 14:18:59
いてらりゅ


104:デフォルトの名無しさん
06/07/18 00:39:07
up

105:デフォルトの名無しさん
06/09/28 18:31:13
ファイルの更新日時はどこでもらえばええですか。

106:デフォルトの名無しさん
06/09/28 23:24:32
どこまでぐぐった?


107:デフォルトの名無しさん
06/09/29 15:24:43
ディスプレイに顔がめり込むまで。

108:デフォルトの名無しさん
06/12/04 18:13:55
はじめてD言語でプログラムしてみたけど
linuxでSDLライブラリがコンパイルできない。

109:108
06/12/15 19:31:40
できた~ リンクが間違ってただけだった


110:デフォルトの名無しさん
06/12/29 14:13:57
Dって何でこんなにコンパイルが速いんですか?

111:デフォルトの名無しさん
07/01/11 12:09:55
>>110
びっくりするほど速いよね
フンクソ思いプリプロセッサがないからじゃない。


112:デフォルトの名無しさん
07/01/11 19:04:34
たしかに早いね~。でもPascalほどじゃないな。

113:デフォルトの名無しさん
07/01/12 01:28:07
パスカルってそんなに早くヤッてくれるんだΣ(´□`*)

114:デフォルトの名無しさん
07/01/13 11:08:23
コンパイル速度に関してはpascalが速い、っていうよりも
Borland Pascalが速いんだよ。

まぁ、言語仕様的にコンパイル速度を上げやすいってのもあるかな。


115:デフォルトの名無しさん
07/01/13 11:13:32
プログラム書くときに人間が半分コンパイルしてるもんな

116:デフォルトの名無しさん
07/01/13 12:37:25
ショボい最適化しかしていないのでは

117:デフォルトの名無しさん
07/01/13 13:07:33
前しか参照しない仕様が効いてるんじゃね?>Pascal

118:デフォルトの名無しさん
07/01/13 13:30:19
1. 言語仕様が高速化に向いている
2. 最適化がショボい
3. コンパイラのアルゴリズムが洗練されている

この 3 つがコンパイラが高速になる条件だな。
2 はない方がいい条件だけど。

119:デフォルトの名無しさん
07/01/13 13:51:58
完成品じゃなくて作り途中のためなら
それはそれでいいんじゃね

120:108
07/02/15 20:54:51
今度はalsaでpcmが鳴った

121:デフォルトの名無しさん
07/02/21 16:41:27
DMDはコンパイルが爆速なのに、
GDCは普通のC++のコンパイラ並の速度なのはなんでだぜ?

122:デフォルトの名無しさん
07/02/27 03:30:47
>>121
バックエンドがGCCだから
抽象化のためにかなり速度を犠牲にしている

123:デフォルトの名無しさん
07/02/27 18:03:39
コンパイル速度を上げられるような言語設計にこだわってるのに、
何か瀬がないな。

124:デフォルトの名無しさん
07/02/27 18:13:25
まぁ、本家が力を示せてるから、とりあえずそれで面目は立ってるよ。

それに細かいことを言えば、「コンパイル速度を上げられるような」言語設計というよりは
「コンパイラを比較的楽に作れる」言語設計を目指してるんだと思うし、
そういう風に考えれば、まぁ遅くても「話が違うだろ!」とまでは行かないから安心安心と。

いや、格好いいことじゃないけどね、遅いのは。

125:デフォルトの名無しさん
07/02/28 00:47:29
コンパイル速度なんて開発の進捗を遅らせるようなもんでもないしね

126:デフォルトの名無しさん
07/02/28 23:40:35
ソースが多くなってくると結構重要。

127:デフォルトの名無しさん
07/03/01 00:56:44
そうっすか。

128:デフォルトの名無しさん
07/03/19 14:02:45
import std.stream;
してるのに
readLine();
が使えない…
project.d(31): Error: undefined identifier writeLine
project.d(31): Error: function expected before (), not writeLine of type int
project.d(32): Error: undefined identifier readLine
project.d(32): Error: function expected before (), not readLine of type int
project.d(32): Error: cannot implicitly convert expression (readLine()) of ty
pe int to char[]
std.stream.readLine();しても
そんなの宣言されてない言われます…
どうしたら標準入力できるのでしょうか。

129:デフォルトの名無しさん
07/03/19 14:08:02
一応こんな感じに対処しましたがもっとスマートなやり方はありませんか。
char[] s;
s.length = 200;
gets (cast(char*)s);
s.length = std.c.string.strlen(cast(char*)s);

言いそびれましたが
WinXP Home SP2/Digital Mars D Compiler v1.009
環境変数
pathはPath;c:\dmd\dmd\bin;c\dmd\dm\bin;C:\borland\bcc55\Bin;c:\dmd\;
です

130:C言語
07/03/19 14:08:57
 ◆ピピー◆
ここでひとつ質問。
C言語で作ったのをコンピャイルして実行ファイルにしたあと、それをダブルクリックしても一瞬で終了しちゃいます。何とかしてシステムの動きを止められないでしょーか?
こんなおばかな僕に誰か救いの手をプリーズ。

131:デフォルトの名無しさん
07/03/19 22:05:34
>>130
{getchar();
fflush(stdin);}
{kbhit();}
などなどの方法がある。

132:デフォルトの名無しさん
07/03/19 22:06:12
kbhit();はconio.h(console input/output)をインクルードしてね

133:デフォルトの名無しさん
07/03/19 22:11:48
荒らしに反応するなよ。

134:デフォルトの名無しさん
07/03/20 23:49:32
conioってそういう意味だったのか、こにょやろう。

135:デフォルトの名無しさん
07/03/21 03:02:16
>>128
std.sreamのreadLineとかってのは、
Streamクラスのメンバ関数なので、
その(派生)クラスのオブジェクトをまず作らないといけない。
使用例はここにあった。
URLリンク(f17.aaa.livedoor.jp)

で、標準入出力で遊ぶならstd.cstreamの方を使うといいよ。
buf = din.readLine(); とかいう感じで使える。

136:デフォルトの名無しさん
07/03/22 23:24:55
>>135
ぬかった!!
dinだったのか…なるほどでございます。

cstreamを使えばmemorystreamをしなくてもdin.うんたらで出力できるんですね。
これは何というか、標準出力って概念を感じさせない使い方でこれまたエレガント…うっとり

137:デフォルトの名無しさん
07/03/24 00:22:14
CのpopenみたいなのをDでやるためにはどうしたらいいですか?

138:デフォルトの名無しさん
07/03/25 19:11:11
Cにpopenなどというものはない。
というか、popenつかえばいいのでは。

139:デフォルトの名無しさん
07/04/07 10:46:05
素数を出力したいのですが、なぜ3しか出力してくれないのでしょうか?
import std.stdio;
import std.file;
import std.string;
import std.stream;
int main()
{
    int[] i;
    int n;

    i.length = 1;
    i[0] = 3;

    for (n = 5; n < 10000; n+=2)
    {
        foreach (int c, v; i)
        {
            if ((n%v) == 0)
                break;
            if (i.length == (c+1))
            {
                i.length = i.length + 1;
                i[i.length] = n;
            }
        }
    }
    foreach (int c, v; i)
    {
        append ("sosu.txt", toString(v)~"\n");
    }
    return 0;
}

140:デフォルトの名無しさん
07/04/07 10:49:47
>>139
i[i.length] とか明らかにおかしいし、そもそも素数の始まりは 2 じゃろう

141:デフォルトの名無しさん
07/04/07 11:33:43
>>140
i[i.length]という部分をi[c+1]とした所巧く動作しました。
ありがとうございます。

別のアプローチも視野にいれてプログラムを組んでいたのですが、
とても中途半端な状態で公開してしまい恥ずかしい限りです…

142:デフォルトの名無しさん
07/04/09 09:45:55
標準入力をバイナリモードにすることってできますか?

D言語のリファレンス見た限り無理そうだったので、
Cのやり方で

import std.c.stdin;
extern(C) int setmode(int, int);
setmode(fileno(stdin), O_BINARY);

とかやってみたのですが、うまくいきません。
最終的に

#include <stdio.h>
#include <fcntl.h>
#include <io.h>

void setbin(void) {
setmode(fileno(stdin), O_BINARY);
}

こんな感じのCファイルを作って
extern(C) void setbin();

としてコンパイル時に.dと一緒にCの.objファイルも指定したのですが、リンクがうまくいかないみたいです。

なんか根本的な勘違いをしているような気がします。
こういう場合どうすればいいのでしょうか。

143:デフォルトの名無しさん
07/04/10 06:45:25
>>6
日本語でおk

144:デフォルトの名無しさん
07/04/13 18:18:14
>>142
確認してないから、一応聞くが、マルチしてないよな?
してなければ以下を試してみてくれ。
もしマルチしてたら帰ってくれ

import std.file;
int main()
{
    char [] k;

    k.length = 10;
    foreach (int c, v;k)
        k[c] = c;
    write ("new.txt", k);

    return 0;
}

145:デフォルトの名無しさん
07/04/13 18:19:20
本スレのほうにまるちっち

146:デフォルトの名無しさん
07/04/14 02:01:19
>>145
むしゃくしゃして
まるちっち作ってやった
反省してない

(((())))))))))))
  伐, ,/リリ
   l2] 2] 3
  (  ε  ノ
  「 ll二ll l
  (_l ., (_)
   (__(__l

147:デフォルトの名無しさん
07/05/10 02:41:22
マルチってなに~?

148:デフォルトの名無しさん
07/05/10 04:10:54
2chにおけるマルチの用法とは「俺は知ってるんだぜ」と
専用ブラウザを駆使し全スレヲッチ/5秒でこなす重度の2ch依存者が
公共の利益を代表しているかの様に錯覚し声高につまらない事を指摘する行為

忙しい朝っぱらに難癖付けて来るゴミ回収場常駐のキチガイババアと同種です。

149:デフォルトの名無しさん
07/05/10 16:33:40
あらやだ、自爆してるざます。

150:デフォルトの名無しさん
07/05/11 02:40:24
構造体で
struct foo
{
int x = 0;
}
foo mat[100];
って使うときに配列の構造体の変数xすべてに代入したいとき
mat.x = 1;
とかやるとプロパティじゃねぇみたいな感じで怒られるから
構造体の初期値で代入したり
mat[i].x = 1ってやってループ回して代入してるんですが
何かもっと便利な方法って無いですか?

151:デフォルトの名無しさん
07/05/11 02:50:07
foreach(ref s; mat) s.x = 1;

152:デフォルトの名無しさん
07/05/11 03:09:35
型タプルってテンプレートの引数に渡せない?

153:デフォルトの名無しさん
07/05/11 07:27:00
memset(&mat[0], 1, 100);

154:デフォルトの名無しさん
07/05/12 00:24:16
>>151,153
150です 便利な方法を教えていただきありがとうございました^^

155:デフォルトの名無しさん
07/05/22 00:33:27
DMDのコンパイラで警告は表示するけどそれを無視してコンパイルする設定
にするにはどうすればいいですか?

156:デフォルトの名無しさん
07/05/22 00:43:56
Dは方針として警告というものはないんじゃなかったっけ

157:デフォルトの名無しさん
07/05/22 00:45:31
あるがな。
dmd -w

158:デフォルトの名無しさん
07/05/23 00:30:43
たしかにdmd -wだと警告でコンパイル止まるな

159:デフォルトの名無しさん
07/05/24 19:35:40
長くてすみません。これの実行結果って30を期待したんですが、
そうならないのは何でなんでしょうか?

class A {
this() {
int f() { return x * 3; }
b = new B(&f);
}
int g(int n) {
x = n;
return b.g;
}
private int x;
private B b;
}
class B {
this(int delegate() f) { this.f = f; }
int g() { return f(); }
private int delegate() f;
}
void main()
{
A a = new A;
dout.writefln(a.g(10));
}


160:デフォルトの名無しさん
07/05/24 19:46:19
30 になるけど?

161:デフォルトの名無しさん
07/05/24 19:54:31
-debugモードだと3、-releaseモードだと362882156になった
-debug -Oで30、-release -Oで362882156

162:デフォルトの名無しさん
07/05/24 19:55:36
うお。オプションで変わるのか。

163:デフォルトの名無しさん
07/05/24 19:57:49
-O3 だとちゃんとなってるのに、
-O だと変になるな。

164:デフォルトの名無しさん
07/05/25 03:04:31
int f() { return x * 3; }
ここのxがインスタンス不明になるからじゃないの?


165:デフォルトの名無しさん
07/05/25 03:08:49
ああ、f が内部関数になってたのか。
これだと this が伝播しないってことか?

166:デフォルトの名無しさん
07/05/25 03:15:35
そんなことはないだろう。

b = new B({ return x * 3; });
もおかしな挙動をするし。

167:デフォルトの名無しさん
07/05/25 03:19:25
まあ、バグだな。

168:デフォルトの名無しさん
07/05/25 03:53:21
b = new B({ return x * 3; });
これだけの情報でどうやって x が A の面罵だって分かるのかな?

169:デフォルトの名無しさん
07/05/25 03:56:16
ああ、 this が電波するのか。
そうなってくれないと困る罠。
まあ、バグだな。

170:デフォルトの名無しさん
07/05/29 22:03:13
D言語って一瞬も流行らなかったな

171:デフォルトの名無しさん
07/05/29 22:24:31
>>170
なに言ってんの? 超流行まくりだよ、俺の頭の中では。

172:デフォルトの名無しさん
07/05/31 13:36:10
まだ仕様変更やコンパイラのバグ多いし
これからだろD言語は


・・・だよな?

173:デフォルトの名無しさん
07/06/02 17:43:29
動的配列の初期化ってまだ実装されてないですよね?
静的配列に動的配列渡すのもまだ未実装なんでしょうか?

174:デフォルトの名無しさん
07/06/02 17:50:26
void main() {
int[] a = [1, 2, 3];
int[3] b = a;
}

こういうこと?言わんとしていることがちょっとよくわからん。

175:173
07/06/02 18:08:23
言葉が足りずすいません
書いてくださったとおりの意味です


176:デフォルトの名無しさん
07/06/02 18:17:25
どの言語もLISPに近づこうと必死だな

177:デフォルトの名無しさん
07/06/02 20:45:59
Lispは神域に達してるからな。
人が神に近づこうとするのは自然だ。

178:デフォルトの名無しさん
07/06/02 23:49:29
Visual D
マダァ?(・∀・ )っ/凵⌒☆チンチン

179:デフォルトの名無しさん
07/06/03 00:20:50
それよりまずはTangoとDFLに期待

180:デフォルトの名無しさん
07/06/10 02:25:38
D言語で行列積とか計算するのに
標準的なライブラリってありますか?

既出でしたらすいません

181:デフォルトの名無しさん
07/06/24 03:19:36
>>180
漏れは聞いたことないな
つか他の言語でも百家争鳴なかんじじゃね?
テンプレートのライブラリも今のところ貧弱っぽいし
他の言語で書かれてあるのを利用するかポーティングするか
もしくは自分でつくるかしたほうがいいかも

182:デフォルトの名無しさん
07/06/24 03:36:07
CLAPACK を呼ぶとか。

183:デフォルトの名無しさん
07/06/25 02:17:50
POLICEを呼ぶとか

184:デフォルトの名無しさん
07/06/26 00:35:55
俺を呼ぶとか。

185:デフォルトの名無しさん
07/06/26 05:36:33
嵐を呼ぶとか

186:デフォルトの名無しさん
07/06/26 17:56:03
ちょ おまいらwwwww

ところでdmd 1.x系統で何事もなく動いてたプログラムを
dmd 2.0でコンパイルしたら実行時に
Error: Stack Overflow
って出て止まるんだけどこれはプログラムに難点があると見るべき?

187:デフォルトの名無しさん
07/06/26 18:03:23
コンパイラがスタックオーバーフローするなら、コンパイラの不具合くさいが、
実際にソース見てみないことにはわからんな。

188:デフォルトの名無しさん
07/06/26 18:19:59
>>187
レスサンクス
ソース眺めてたら原因の箇所がつかめたっぽいので
ちょっと調べてみるよ


189:デフォルトの名無しさん
07/06/29 02:47:37
dmd 1.x系と2.x系ってお手軽に切り替えれたりする?

190:デフォルトの名無しさん
07/06/29 05:44:24
D1.xとD2.xのソースコードに互換性はない。

191:デフォルトの名無しさん
07/06/29 11:28:07
うはwwwwwwおkwwwwwww
コンパイラはオプションで切り替えれたりしない?

192:デフォルトの名無しさん
07/06/29 17:02:55
dmd -v1

193:デフォルトの名無しさん
07/06/29 19:55:55
それやるとdmd 1.x系のでコンパイル通ってたのでも通らなかったりする

194:デフォルトの名無しさん
07/07/07 01:23:23
D言語で配列aの要素全体を5で割りたいとかかけたいときって

a * 5
a / 5

とかいうやり方が許されていないのは配列演算がまだ実装されてないから?

195:デフォルトの名無しさん
07/07/07 01:35:07
yes.

196:デフォルトの名無しさん
07/07/07 02:22:50
>>195 thanks.

197:デフォルトの名無しさん
07/07/07 02:33:25
FORTRAN 並みの配列演算が行えるといいな。

198:デフォルトの名無しさん
07/07/07 02:34:08
間違った。FORTRAN じゃなくて Fortran だ。90 以降。

199:デフォルトの名無しさん
07/07/07 03:12:44
別に間違いというほどのことじゃないだろ
どのみち今の段階じゃバグ多すぎでとても数値計算に使う気になれナス

200:デフォルトの名無しさん
07/07/07 03:28:26
まぁそれでも将来的にはFortran並みの実装を期待

201:デフォルトの名無しさん
07/07/07 03:33:08
a[:] = b[:] * 2 + c[:]; とか。

202:デフォルトの名無しさん
07/07/07 04:04:18
標準関数にmatmulも入って欲しいな
配列演算じゃないけど個人的には**も使いたい


203:デフォルトの名無しさん
07/07/08 04:20:42
そういえばLatex→Fortranと入ってきた俺はC言語にいたって
pow関数を使わなきゃいけないと知ったときやたら面倒だなと思った

204:デフォルトの名無しさん
07/07/20 09:36:57
powってコストが高そうなイメージがあるんで掛け算で書いてたなあ

205:デフォルトの名無しさん
07/08/10 01:19:29
age!()

206:デフォルトの名無しさん
07/08/12 03:02:37
こっちはずいぶん過疎ってるなぁ・・・・


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch