問題タブ [phobos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
d - Dのウェブページからデータを読みますか?
単純にURLを開いて、Dを使用してWebページからデータを読み取る方法は?(標準のlib機能を使用する必要がある場合は、タンゴよりもphobosの方が好きです)
d - 文字列がD/phobosの部分文字列で始まるかどうかを確認しますか?
文字列がDの特定の文字で始まるかどうかを最も簡単に確認する方法は、これまでのところわかりません。
私は次のようなものが欲しいです:
私が見つけた最も近いものは「chompPrefix」(ここ)でしたが、それは私が本当に望んでいるものではありません。
d - writefln()の外部でDの文字列を連結する最短の方法は?
私は繰り返しフォーマット文字列を連結する必要があり、Dでwritefln()関数の外部で文字列を連結するための最短(または最も読みやすい)方法は何でしょうか?
つまり、writeflnの動作が好きです。たとえば、次のように実行できます。
...しかし、stdoutに書き出さずにこれを実行したいと思います。同様に簡単な方法はありますか?
私が見つけた唯一の考えはstd.stringのformat関数でしたが、最初の引数として事前定義された長さの文字列バッファを提供する必要があり、ほとんどの場合不便です。
私が見つけた他の選択肢は、(std.arrayの "join"を使用して)行うことでした:
...これは非常に便利ですが、もちろん同じ「セパレータ」を使用する場合にのみ機能します。
これを行うためのより一般的な方法は、上記の例よりも短く、事前定義された長さのバッファ文字列を提供する必要はありませんか?
d - std.regex.regex() は純粋ではありません。なんで?
D では std.regex.regex() は純粋ではありません:
なんで?
それは...ですか
A. 十分なpure
キーワードが投入されていません。
また
B. もっと深い理由がある
d - Object.Error:std.algorithm.cartesianProductの結果を印刷するときに違反にアクセスする
x86用にDMD2.062を使用しています。
このプログラムは次のように出力します。
次に、アクセス違反エラーがスローされます。CartesianProductを誤って使用していますか、それとも関数のバグですか?
d - 効果的な D : ベスト プラクティスと設計パターン
D-Specific Design Patternsに関する非常に興味深いカンファレンスが開催され、D コミュニティでは、効果的なコーディング手法を扱う本の出発点になるのではないかと考える人もいました。多くの人が多くの経験を持っていないため、時期尚早であると主張する人もいます。そのような本の著者は、有効性の概念について偏った/個人的な評価を持っています. SO はよりインタラクティブなメディアです (制限があります)。したがって、'Effective D' が発表されるのを待って、D コードの見栄えを良くするための (キリング) アドバイス/テクニック/パターンを共有できれば幸いです。答えがあればより明確になると思います:
- 独自のテクニックを公開
- 基本的にはコメント付きのコードです
- (大きすぎる場合)コードへの単なるリンクです(公開要点...)
c++ - D のシリアライゼーション API に関する考察
ファイルとディレクトリに関するタイプ、統計などをキャッシュする新しい種類の検索エンジンを開発する途中で、現在、次を使用して内部ディレクトリツリーの永続的なキャッシュを実装しようとしていますmsgpack-d
:
Boost.Serializationmsgpack-d
のように、1 つの共通テンプレート (メンバー) 関数のオーバーロードを介して、std.serialization
(オレンジ)パッキングとアンパッキングの両方の実装をサポートしないのはなぜですか? たとえば、この簡潔で洗練されたテンプレート メンバー関数を使用してコンテナーをシリアル化できます。
pack
これにより、コード サイズが半分になり、とunpack
が同期しなくなるリスクがなくなります。このアプローチを使用することで大きな欠点を見逃したことがありますか、それとも単にこのアプローチが優先されていないのでしょうか?
segmentation-fault - 大きすぎる入力に対する D のセグメンテーション違反
次の D プログラムは、入力 939971 以上ではクラッシュしますが、入力 939970 以下ではクラッシュしません。
スタックトレース:
私にはフォボスのバグのように見えます - 私は正しいですか?