8年間futureのままだったが、今月ようやく警告を出すPRが出たんだな 0561デフォルトの名無しさん2016/05/24(火) 11:51:00.77ID:ng4V60az>>559 CTFE が充実したとかLDCにぬかれたとかありそう それに PreciseGC が未だにないのにビルトイン型だけ充実してますと言われても困る 0562デフォルトの名無しさん2016/05/24(火) 23:39:58.92ID:mrDJwu+1 Pythonでいうところの np.array([[[i,j] for i in range(3)] for j in range(5)]) や np.array([[i,j] for i in range(3) for j in range(5)]) はDではrangeやndsliceを使って一行くらいで表現できますか? 0563デフォルトの名無しさん2016/05/25(水) 02:32:41.24ID:ywcZQvWe>>562 import std.algorithm, std.range; 3.iota.map!(a=>5.iota.map!(b=>[a,b])).join ndslice使ってないけどこんなんですか 0564デフォルトの名無しさん2016/05/25(水) 13:31:47.54ID:7HlacyyV>>563 おお、綺麗だ…… まさかpythonより短く書けるとはびっくりしました。 ありがとうございます 0565デフォルトの名無しさん2016/05/25(水) 14:49:41.33ID:JMqhkYJX Dとpythonは相性良い感じ 0566デフォルトの名無しさん2016/05/27(金) 18:54:45.88ID:a5zDK+Zd dmcの質問なんですけど a->b(a); みたいなオブジェクトaに対するインスタンスメソッドbの呼び出しを #define M(x, y) x->y(x) みたいに定義して M(a, b); と書きたいのですが エラーになります どうマクロを書くのが正しいのですか 0567デフォルトの名無しさん2016/05/27(金) 23:33:42.41ID:XThKS0xC>>566 俺の環境ではその書き方のままで動くけど? そもそもそのマクロの意図がわからんが。 http://codepaste.net/j8ub3f0568デフォルトの名無しさん2016/05/27(金) 23:53:06.16ID:0lBzfo5D>>567 ここD言語のスレやで 0569デフォルトの名無しさん2016/05/28(土) 11:08:25.75ID:YkPoIoOS 現象がdmc限定っぽかったのでここで質問しました 実際のコードはメソッドにいくつかパラメータ(可変長)があって a->b(a); のケース以外に a->b(a, c, d, e); でも呼ぶケースがあるので #define M(x, y, ...) x->y(x, ## __VA_ARGS__) みたいに定義して M(a, b); するとエラーになります 条件後出しで済みませんでした 0570デフォルトの名無しさん2016/05/28(土) 12:41:24.79ID:2veKovfq>>569 その書き方はgccのコンパイラ拡張じゃまいか https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html ちなcl https://msdn.microsoft.com/en-us/library/ms177415.aspx >>568 ごめ。 0571デフォルトの名無しさん2016/05/28(土) 12:45:14.86ID:YkPoIoOS 「##」 を無くしてもエラーになるんです
#define M(x, y, ...) x->y(x, __VA_ARGS__) M(a, b); 0572デフォルトの名無しさん2016/05/28(土) 15:20:08.53ID:2veKovfq 可変個引数が0個の場合、C99的にはコンマが余っちゃうからそれぞれ独自拡張しますってリンク先に書いてあります。 dmcはもうあんまり使わないほうがいいかも http://en.cppreference.com/w/cpp/compiler_support 時代はDだよね!?(スレチ回避) 0573デフォルトの名無しさん2016/05/28(土) 15:31:12.42ID:YkPoIoOS ありがとうございます!! Dで書き直すことにします!!! 0574デフォルトの名無しさん2016/05/28(土) 22:37:06.78ID:/97ybqru mixin templateでopIndex(size_t I)を定義した後mixinなしでopIndex(size_t i, size_t j)を定義するとopIndex(size_t I)が無効になりますが、これは何が起こっているのでしょうか? 0575デフォルトの名無しさん2016/05/29(日) 02:18:09.41ID:KH4GuwqF>>574 http://dlang.org/spec/template-mixin.html#mixin_scope If the name of a declaration in a mixin is the same as a declaration in the surrounding scope, the surrounding declaration overrides the mixin one: っていう仕様 0576デフォルトの名無しさん2016/05/29(日) 09:19:07.17ID:xui0wAEZ>>575 これって引数の型や数が違っててもオーバーライドするんですか…… 0577デフォルトの名無しさん2016/05/29(日) 18:01:34.33ID:TAOnosGl 575のリンク先の下のほうにあるけど、aliasでオーバーロードに含めることができます。 0578デフォルトの名無しさん2016/05/29(日) 19:40:16.20ID:Ai+IvVh7 オーバーロード集合はちゃんと使えないとハマることがあるのに 説明が不十分だと思う 0579デフォルトの名無しさん2016/05/31(火) 22:06:56.78ID:RGgOwYh0 FreeStandingな環境向けのD2向けRTTIの実装って有ったりするです? 0580デフォルトの名無しさん2016/06/02(木) 12:17:10.24ID:kBgl6uD2 5月31日 5時10分