問題タブ [conditional-compilation]
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.
objective-c - 構成用の XCode プリプロセッサ マクロ?
XCode Objective-C プロジェクトで、ビルドされている構成を検出できるようにしたいと考えています。どうすればこれを達成できますか?
c++ - C++ での 32 ビットと 64 ビットの判別
C++ コードが 32 ビットと 64 ビットのどちらでコンパイルされているかを確実に判断する方法を探しています。私たちは、マクロを使用して合理的な解決策であると考えるものを思いつきましたが、これが失敗する可能性のあるケースを人々が考えられるかどうか、またはこれを行うためのより良い方法があるかどうかを知りたいと思っていました. クロスプラットフォームの複数のコンパイラ環境でこれを実行しようとしていることにご注意ください。
ありがとう。
delphi - カスタム定義の範囲
2つの異なるプログラムで使用したいユニットがあります。シンボルを定義したい違いを伝えるために、ユニットでそれを確認します。
私が持っているプロジェクトのDPRでは;
そして私のForm1ファイルには
しかし、私はブーイングを見ることができません!定義は特定の範囲に限定されていますか?
c - OS X 固有のコードには、どの C プリプロセッサ条件を使用すればよいですか?
OS X 固有のコードには、どの C プリプロセッサ条件を使用すればよいですか? OS X 用にコンパイルする場合は特定のライブラリを含める必要があり、Linux 用にコンパイルする場合は別のヘッダーを含める必要があります。
あることは知ってい__APPLE__
ますが、それが現在の OS X 10.x の条件であるかどうかはわかりません。
.net - .NET条件付きコンパイラシンボルと単体テストライブラリ
私のチームには、アプリケーションコードに対して実行される一連の単体テストライブラリがあります。残念ながら、それらは(予期しない)例外をスローしています。これは、ロギングコードが呼び出されており、オブジェクトが設定されていないためです。ロギングコードは、PostSharp(メソッド本体の実行の前後に呼び出される)を使用して設定したメソッド属性を介して実行されます。属性は呼び出さないでください。
PostSharpが役立つのはここです。PostSharpは、実行しないように指示する条件付きコンパイラ指令(SKIPPOSTSHARP)を探します。言い換えると、単体テストの実行中にディレクティブを定義すると、ロギングの側面とは関係なく目的のコードをテストできます。途中で不要な依存関係や複雑なモックコードを回避することに成功します。
これは素晴らしい!1つのキャッチを除いて...テストプロジェクトに対して定義された条件付きコンパイラ指令は、テスト対象のプロジェクトに対して定義されません。つまり、テスト対象のコードは引き続き属性を使用し、テストはすべて失敗します。
単体テストを実行する場合にのみ、ソリューション全体でコンパイラ指令を定義することは可能ですか?ソリューション全体に適用していなくても、単体テストを実行している場合にのみ、ディレクティブを特定のプロジェクトに適用できますか(これも同様に機能します)?
このアプローチについての意見も興味があります(AOPコードを介して分離とスケーラビリティを実現しようとしていますが、進行するにつれてジャンプするための追加のフープがいくつかあるようです)。
注:ここでは、統合テストについて話しているのではなく、単体テストについてのみ説明しています。特定の単体をテストしたいだけで、ロギングコードが機能するかどうかは関係ありません。これは、他の単体テスト(正常に機能します)によってテストされます。
c - C-#ifdefの代替
私はレガシーCコードの大部分を合理化しようとしています。今日でも、それを維持するビルド担当者がソースファイルを取得し、さまざまなタイプの環境に基づいてコンパイルする前に次のセクションを手動で変更します。
例は次のとおりですが、ここに質問があります。私は自分のCに錆びていますが、#ifdefの使用は推奨されていないことを思い出します。あなたたちはより良い代替案を提供できますか?また、その一部(すべてではないにしても)を環境変数として設定したり、パラメーターとして渡したりできると思います。その場合、これらを定義してソースコードからアクセスするための良い方法は何でしょうか。
これが私が扱っているコードの抜粋です
asp.net - asp.net MVC-aspx(site.master)で直接条件付きコンパイルしますか?
site.masterで直接条件付きコンパイルタグに問題があるようです。
基本的に私は次のものを持っていますが、DEBUGとRELEASEで実行できますが、コンパイラで「シンボルDEBUGを解決できません」と報告します...しかし、最終出力は常にDEBUG天気で何を出力しますか?私はRELEASEまたはDEBUGにいます...
そして、前述のように、コンパイラは文句を言いませんが、デバッグ中の小さな赤い線がエラーmsgで表示されます。何が間違っているのでしょうか。誰か助けてもらえますか?
java - Java の #ifdef #ifndef
C++ の #ifdef #ifndef のように、Java でコンパイル時の条件を作成する方法があるかどうかは疑問です。
私の問題は、Java で記述されたアルゴリズムがあり、そのアルゴリズムに対して異なる実行時間を改善していることです。そこで、各改善を使用したときにどれだけの時間を節約できるかを測定したいと思います。
現在、実行時に使用する改善と使用しない改善を決定するために使用されるブール変数のセットがあります。しかし、これらの変数をテストするだけでも、総実行時間に影響します。
そこで、コンパイル時にプログラムのどの部分をコンパイルして使用するかを決定する方法を見つけたいと思います。
誰かがJavaでそれを行う方法を知っていますか? または、そのような方法がないことを誰かが知っているかもしれません (それも役に立ちます)。
wpf - XAML で ifdef を使用するにはどうすればよいですか
多くの XAML コードがあり、WPF 4.0 の機能を活用しながら、WPF 3.0 との互換性を維持したいと考えています。UseLayoutRounding
例えば、空いていれば利用したいです。もちろん、C# でこれを行うこともできます。
XAML で同じことを達成するエレガントな方法はありますか?