問題タブ [language-design]
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.
c++ - C ++イテレータは有害と見なされますか?
今日の Boost ライブラリ カンファレンスで、Modern C++ Design and the Loki C++ library の著者であるAndrei Alexandrescuは、イテレータが悪い理由について「Iterators Must Go」(ビデオ、スライド) というタイトルの講演を行い、より良い解決策を示しました。
プレゼンテーションのスライドを読もうとしましたが、あまり理解できませんでした。
- イテレータは悪いですか?
- 彼の代わりは本当に良いですか?
- C++ の実装者は彼のアイデアを採用するでしょうか?
language-agnostic - substring()はどのように機能する必要がありますか?
Javaの[String.substring()メソッド]( http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html#substring (int,%20int% 29)は、そのまま指定されています。番号付きの位置から開始して、指定された文字数を返すように指示することはできません。自分で終了位置を計算する必要があります。また、終了位置を超えて終了位置を指定すると、文字列は、文字列の残りの部分を返すのではなく、Javaが例外をスローします。
私は、substring()(またはsubstr())が開始位置と長さの2つのパラメーターを受け取る言語に慣れています。これはJavaの方法よりも客観的に優れていますか?もしそうなら、それを証明できますか?あなたが見たsubstring()の最良の言語仕様は何ですか、そしてもしあるとしたら、言語が別のことをするのが良い考えになるのはいつですか?Javaが優れた設計アイデアを投げかけるIndexOutOfBoundsExceptionですか?これはすべて個人的な好みに帰着しますか?
compiler-construction - Natural Programming Language.... 何を見たいですか?
私はコンパイラの作成を検討しており、「C」スタイルで何かを完成させた後、それを他のモデルに適応させることを検討しています。「自然な」プログラミング言語で見られると予想される構文構造は何ですか?
このコンパイラのターゲット プラットフォームは CLR であり、現在、レクサー/パーサーに Oslo+MGrammar を使用しています (おそらく、これは単にプレイするための言い訳であることがわかります)。
私のプロジェクトの目標の 1 つは、プログラミングが構造化された構文や要求よりも会話のように感じられるようにすることです。
これはもう少し伸ばしたほうがいいと思います。私が取り組んでいるアイデアの 1 つは、クラス宣言を段落のように読むことです。
...翻訳も...
.net - プロパティセッターとゲッターがget_Xおよびset_Xメソッドと衝突するのはなぜですか?
プロパティでは第.NET
一級市民であると想定されていますが、IL
コードではプロパティのゲッターとセッターはget_
PropertyNameとset_
PropertyNameとして実装されています。
出力:
エラーCS0082:タイプ「SO.Property」は、同じパラメータータイプを持つ「get_Value」というメンバーをすでに予約しています
エラーCS0082:タイプ「SO.Property」は、同じパラメータータイプを持つ「set_Value」というメンバーをすでに予約しています
設計者が.NET
ユーザーコードと衝突する可能性のある名前を使用することにしたのはなぜですか?不正な文字を使用した可能性があります(Javaが$
内部クラスのものに使用するため)。
language-design - 「成熟した」ソフトウェアとは?
Jeffery Palermo は、「従来の Web フォームはASP.NET MVCよりも成熟している」と述べています。「従来の Web フォームは ASP.NET MVC よりも成熟していますか?」.
主観的なようですが、私が知りたいのは、「成熟した」ソフトウェアとは正確には何ですか?
javascript - 変数キーを使用してJavaScriptオブジェクトの値にアクセスする
コード:
オブジェクトデータ:
問題:
alert(data.A5A50000[0].time);
「2009-05-2716:36:45」が正しく表示されます。
alert(bsID);
「A5A50000」が正しく表示されます。
alert(data.bsID[0].time);
「data.bsIDが未定義です」と報告します。
alert(data[bsID][0].time);
「data[bsID]は未定義です」と報告します。
変数がいつ評価されるか、または評価されないかは少しわかりません。何かばかげたものを見落としているかもしれませんが、ここで自分の問題を理解することはできません。
c++ - C / C ++では、なぜwhile(expression);を実行するのですか。セミコロンが必要ですか?
私の推測では、構文解析が簡単になっただけですが、その理由は正確にはわかりません。
だからこれは何を持っていますか...
それはより良いです...
c++ - make_heapのポイントは何ですか?
誰かがSTLヒープ関数テンプレートのポイントを教えてもらえますstd::make_heap
か?なぜ誰もがそれらを使用するのでしょうか?実用はありますか?
c# - Foreach は InvalidCastException をスローできますか?
次のコードを想像してください。
なぜこの foreach の動作は C# に似ていないのでしょうか? ここで起こるのは、サブクラスへの暗黙のキャストです。これはエラーが発生しやすく、言語の他のすべての場所で禁止されているようです。それとも私は正しくありませんか?
PS私が尋ねている理由は、プロジェクトの同様のコードにバグがあり、以前は like と呼ばれていた外部ライブラリからカスタム コレクションを反復処理していたSomeTypeCollection
が、実際には基本型アイテムのコレクションを提供していたためです。のアイテムが含まれている可能性がありSomeOtherType
ます。私のせいですが、言語もコンパイラも明示的なヒント/警告を提供しませんでした。これはC#では非常に珍しいことです...