問題タブ [compile-time]
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でデフォルトのガベージ値を解決するには?
C プログラミングで値を定義せずに整数として変数を宣言すると、printf はバッファからガベージ値を出力します。ガベージ値の出力を防ぐ方法はありますか?
コンパイル時に何かできるかどうかを確認したいですか? もし可能なら?
c++ - C++ブーストバリアントの質問
私はそれがその背後にあるものをboost::variant
使用しboost::mpl
、mpl互換のtypedefを持っていることを知っていますtypes
。
単純なtypedefがあるとしましょう:typedef boost::variant<bool, int> Variant;
今、私は別のテンプレート関数を持っています、例えば:
T
この関数は、一部の場合とそうでない場合の2つの場合で異なる動作をするようにしVariant::types
ます。
明らかに、私は次のようなことをしなければなりません
私が知らない唯一のことはこれCONDITION
です。
T
さて、がの一部である場合、コンパイル時のクエリを作成することは可能だと思いますVariant::types
。
誰かが方法を知っていますか?
c++ - Modern C++ Design の CompileTimeChecker が期待どおりに機能しない
私は最近、Andrei Alexandrescu による Modern C++ Design を読み始めました。コンパイル時のアサーションを読んだ後、次のコードを試しました。
2 行目のため、コードはコンパイルされないはずですが、正常にコンパイルされます。Line 1を次のように変更すると
また
期待どおりに動作します。理解できません。
c++ - コンパイル時にクラスに特定のメンバー関数が含まれているかどうかを確認する方法
2つのクラスがあるとします:
次の関数でタイプ A または B のオブジェクトを使用したい
さて、たくさんのクラスがあり、GetInt() を含むものも含まないものもあります。型ごとに特殊化を記述したくありません。' GetInt() を含むか、コンパイル時に含まないかで区別したいだけです。 '、どうすればいいですか?
c++ - パラメータクラスが特定のメソッドを実装していることをboost_assert
パラメータクラスを取る特定のテンプレートがあるとします
特定の署名方法を実装するBOOST_ASSERT_MSG
バリデーションを追加したいConnectorClass
この場合、アサート条件はどのように書けばよいでしょうか。
編集:質問には明確な解決策がないように思われるため、回答に関するいくつかの参照に基づいて中間結果を含むサブ質問を投稿していますここに従ってください
c++ - メソッドのコンパイル時のアサーション。まだ動作していません
テンプレート パラメーターがメソッド (またはその親クラスの 1 つ) を実装していることをテンプレート内でアサートする簡単な方法が必要です。私は概念チェックライブラリを読みましたが、このような単純なチェックを行う簡単な例を見つけるのは難しいです.
私は他の投稿(この投稿やこの投稿など)をフォローしようとしましたが、これを変更して、多くのメソッドタイプ(私の例ではFoo(メソッド名)とhas_foo(チェッカー名))で汎用的にできるようにしました。マクロ引数としてラップされるため、任意のメソッドに使用できます)
私が今持っているコードはこれです:
このサンプル コードをコンパイルすると (g++ 4.4.3 ubuntu で -std=c++0x オプションを指定すると、static_assert が認識されます)、次のようになります。
そこで待ってください (Connector< Bla1 > a がコメントされていることに注意してください) 私の最初の質問は次のとおりです。
1) アサーションが評価されている場合、含まれているテンプレートがインスタンス化されていると仮定するのは正しいですか?
編集: GMan による回答: static_assert は、テンプレートがインスタンス化されたときではなく、解析中に評価されます。false を sizeof(TypeToBeChecked)==0 に置き換えると、コンパイル時にバインドされます
2) コネクタ テンプレート クラス内の静的アサートが int(int, double) シグネチャを使用して has_foo をインスタンス化しているため、単一パラメーターおよびパラメーターなしの特殊化をインスタンス化するべきではないと仮定するのは正しいですか? 私の仮定の何が問題なのですか?
編集:この仮定は正しいですが、1)の答えに従って修正したので、インスタンス化プロセスは期待どおりに動作しています
3) Connector< Bla1 > 行のコメントを外すと、失敗すると予想されます (Bla1 には 1 つのパラメーター署名を持つ Foo しかないためです。ただし、そうではありません。何が問題なのか、特に最初の考慮事項を考慮してリンクされた投稿
java - 静的データ構造
コンパイル時に Map または Set 型のデータ構造を作成する方法はありますか?
私がこれを尋ねる理由は、私は App Engine で作業しており、並べ替えと検索が必要なデータ構造がいくつかあるためですが、それらは一定であるため、開始時にそれらを作成する時間コストを避けたいと考えています-上。
java - Java では、実行時エラーではなくコンパイル時エラーを生成したい
私は現在、このようなことをしています。
コードのどこにでも httpStatus.get(n) があることを確認したいのですが、n は後で実行時に調べるのではなく、コンパイル時に有効です。これを何らかの形で強制することはできますか?(「開発環境」としてプレーンテキストエディタを使用しています。)
私はJava(今週)が初めてなので、優しくしてください!
ありがとう。
java - コンパイル時と実行時の依存関係 - Java
Javaのコンパイル時と実行時の依存関係の違いは何ですか? クラスパスに関連していますが、それらはどのように違うのでしょうか?
java - Java アプリケーションでのビルド ID の取得
実行時にアプリのタイトル バーに表示されるビルド ID (コンパイル時に生成される) を記録するための簡単な提案はありますか?
Eclipse 内からビルドする場合、必要なのは ID だけです。ID をタイトルに渡すことができます。