comが何なのか良く知らないので、 エラー回避のためにstaticにしたんだが、 やっぱりおかしいのか。 libphobos/std/c/windows/com.d:240: error: '*LTHUNK0' aliased to undefined symbol '_D3std1c7windows3com9ComObject14QueryInterfaceMWPS3std1c7windows3com4GUIDPPvZi' libphobos/std/c/windows/com.d:240: error: '*LTHUNK1' aliased to undefined symbol '_D3std1c7windows3com9ComObject6AddRefMWZk' libphobos/std/c/windows/com.d:240: error: '*LTHUNK2' aliased to undefined symbol '_D3std1c7windows3com9ComObject7ReleaseMWZk' みたいなエラーがでるんだが、 LTHUNK0なんてソースのどこにも出てこないし謎。 試しにいろいろいじって、たまたまstaticにしたらうまくいったという話。 まあ、comプログラミングなんかしないから、 別に通ればなんでもいいのだが。
953 :
デフォルトの名無しさん :2008/08/03(日) 13:39:36
さっきちょっと思いついたんだけど変数の変更を一時的に禁止する様な機能ある? const(hoge, fuga) { // hoge, fugaは変更禁止 } // 変更OK
void main() { int hage = 42; (const typeof(hage) hage = hage) { writeln(hage); // 42 hage++; // error }(); } dirtyすぎる…
最近ここで晒されるソースを見ても何がなんだかです。
>>953 pureとか予約語になってるんだし,要望したら入れてくれるんじゃね?
957 :
953 :2008/08/03(日) 14:41:00
>>954 バグ回避目的なのに手段が真逆に向かっている様なw
ああ、bugzillaに投稿とかのほうがよかったんだろうなぁとか 思ったけど、いいや。やる気ないので、スマヌです。
これじゃ、何かいてるかわからないな。 >846 >847 >848 ここらへんの話です。 暑くて駄目だwww
一時変数の名前はhigeを使ってください
>>953 既出みたいなもんだけど関数のconst引数じゃダメなの?
class A{const void pp(){}}
void f(const A a){
a.pp;
}
void main(){
A a = new A;
f(a);
}
値型でもこう int i=1; g(i); void g(const ref int i){ i++; // error }
sakuraiさんが久しぶりにDの話題してるの見たw
>>965 D1.0のデリゲートもレキシカルクロージャじゃないだけで、ちゃんとしたクロージャだよ。
もっとも、環境を持ち運ばないから変数aの寿命が来た時点でクロージャは無効になる。
967 :
966 :2008/08/03(日) 19:40:15
ちなみに補足しとくと、一個目のコードは「たまたま動いてるだけ」のケース。 aのスコープは終わってるので本来は無効。
968 :
965 :2008/08/03(日) 19:45:50
>>966 さんくす。よくわかった。
>「たまたま動いてるだけ」のケース。
こういうのがバグの温床になるんだよな…
この前すっげー下らないスレをマ板に誤爆したから立てられない、スマン GCをマイクロ秒指定で動作させられるといいな 例えばだが genCollect(1000); で最大で1秒間GCに処理を渡す 戻り値はGCにかかった時間、失敗したら0とか-1だとか 重いけど合間を縫ってGC動かしたい という時に便利 ↓次スレよろ
ERROR:新このホストでは、しばらくスレッドが立てられません。 またの機会にどうぞ。。。 デフォルトの名無しさん (1) しょぼーん ↓次スレよろ
名前つき引数って採用できないのかなあ…
構造体リテラル使ってお茶を濁すとか
構造体リテラルは普通の関数呼び出しの構文だから名前つけれないよ… 名前かけるのは構造体イニシャライザか連想配列リテラル… 構造体リテラルと構造体イニシャライザの構文合わせて欲しかったんだけど、もうむりなのかなあ。
ああ構造体イニシャライザか間違えた D言語に不可能という文字はない(破壊的変更に関しては) 売り込めばあるいは
this(typeof(this) other) { this.tupleof = other.tupleof; } typeof(this) dup() { return new typeof(this)(this); } 埋め支援
978 :
デフォルトの名無しさん :2008/08/06(水) 13:41:55
979 :
デフォルトの名無しさん :2008/08/06(水) 14:03:36
980 :
デフォルトの名無しさん :2008/08/06(水) 14:05:27
981 :
デフォルトの名無しさん :2008/08/06(水) 14:05:40
982 :
デフォルトの名無しさん :2008/08/06(水) 14:07:59
983 :
デフォルトの名無しさん :2008/08/06(水) 14:07:59
984 :
デフォルトの名無しさん :2008/08/06(水) 14:07:59
985 :
デフォルトの名無しさん :2008/08/06(水) 14:07:59
986 :
デフォルトの名無しさん :2008/08/06(水) 14:07:59
987 :
デフォルトの名無しさん :2008/08/06(水) 14:08:00
988 :
デフォルトの名無しさん :2008/08/06(水) 14:08:00
989 :
デフォルトの名無しさん :2008/08/06(水) 14:08:00
990 :
デフォルトの名無しさん :2008/08/06(水) 14:08:00
991 :
デフォルトの名無しさん :2008/08/06(水) 14:08:00
992 :
デフォルトの名無しさん :2008/08/06(水) 14:08:01
993 :
デフォルトの名無しさん :2008/08/06(水) 14:08:00
994 :
デフォルトの名無しさん :2008/08/06(水) 14:08:01
995 :
デフォルトの名無しさん :2008/08/06(水) 14:08:02
996 :
デフォルトの名無しさん :2008/08/06(水) 14:08:02
997 :
デフォルトの名無しさん :2008/08/06(水) 14:08:02
998 :
デフォルトの名無しさん :2008/08/06(水) 14:08:02
999 :
デフォルトの名無しさん :2008/08/06(水) 14:08:02
1000 :
デフォルトの名無しさん :2008/08/06(水) 14:08:02
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。