問題タブ [preprocessor-directive]
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++ - #if プリプロセッサ ディレクティブを C++ でネストできますか?
C++ のプリプロセッサ ディレクティブについて質問があります。
例えば:
このように使用できますか? C++ コンパイラはifndef
andendif
を正しい方法で一致させることができますか?
c++ - C++での#ifdef1とは
#ifdef 0
C ++では、プログラマーがコードの実行をブロックするために使用することを知っていますが、この同じプロジェクトでは、多くのが表示され#ifdef 1
ます。これは、コードが常に実行されることを意味しますか?残念ながら、コードはコンパイルされないので、実行してテストすることはできません。
c - プログラムの実行は常にCのメインから始まりますか?
プログラムの実行はメインから開始する必要がありますか、それとも開始アドレスを変更できますか?
in fun
このプログラムはの前に印刷しin main
ます。
c++ - C++での#undefの使用
私はGSLライブラリのコードを研究していて、ヘッダーファイルの先頭の数行に戸惑っています。#undef、#ifdefなどが何をするかは理解していますが、理解できないのは、なぜそれらが基本的に_BEGIN_DECLSの定義をリセットしてから、続けて再度定義したのかということです。技術的には、以前の定義はないはずですよね?つまり、これらは静的であり、変更されることはありません。とにかく、ここにコードからの抜粋があります:
objective-c - #ifdef の if 条件の書き方。ステージング用。目標 c で
このコールStaging内にもう 1 つの条件を追加する必要があります。
この状態でどうするか。
MyApp_Staging
これを行う方法は?
c-preprocessor - 大文字と小文字を区別しない #define
プリプロセッサで大文字と小文字を区別しない #define ステートメントを発行することはできますか?
たとえば、foobar のケーシングを Spameggs に変換したい、つまり:
この背後にある理由は、いくつかの fortran サブルーチンを別の名前に #define したいからです。もちろん、それらは大文字と小文字を区別しません。大文字化スキームを維持することはあまり気にしていないことに注意してください(最後の例ではナンセンスに思えます)。
c++ - プリプロセッサディレクティブ「使用」
Cの学習に関する以前の知識から、のようなプリプロセッサディレクティブはステートメントではないことがわかってい#include
ます。そのため、名前が示すように、プログラムがコンパイルされる前のプロセスであるため、最後に#define
aを追加する必要はありません。;
それ。
C ++では、新しいディレクティブが導入されますusing
が、なぜこのディレクティブはセミコロンを追加するのですか?私はそれがステートメントではないところを私が学ぶ前の指令のようだと思いましたか?
xcode - Xcode: 補完/強調表示を壊すマクロ
Xcode ドキュメントから:
構文の強調表示、コード補完、およびその他すべてのインデックス駆動型機能は、LLVM パーサーによって処理されます。コンパイラがシンボルを認識している場合、Xcode IDE も認識しています。
しかし、プリプロセッサ ディレクティブ内でコードを記述する場合、これらの「インデックス駆動型機能」はどれも機能しません。誰かがこれに対する解決策を持っていますか?
例:
未使用パラメーターの警告をオンにしてビルドすると、そのパラメーターが使用されている場合でも大量の警告が生成されます。この特定のスクリーンショットのコードは ApplesReachability.m
のもので、変更されていません。ここでも構文の強調表示が存在しないことに注意してください。
内部の正しい補完#if
:
しかし、内部の間違った補完#else
:
半分はローカル変数で動作します:
しかし、現在のメソッド スコープ外で宣言された何かを呼び出すと、再び壊れます。
これを修正する方法を教えてください。
visual-studio-2010 - 異なるプロジェクトの異なるファイルに対するプリプロセッサ ディレクティブ (定数)
Visual Studio 2010 のさまざまなプロジェクトのさまざまなファイルに対して、いくつかのプリプロセッサ ディレクティブ定数を設定することは可能ですか? これが私がやろうとしていることの例です:
プロジェクト「A」のファイル「1」で、次のように定義します:TIMEDISPLAYING
プロジェクト「B」のファイル「2」で、TIMEDISPLAYINGを確認します。
プロジェクト ファイルにカスタム定数を追加できることはわかっています。同様のものを追加できるソリューション ファイルのどこかにありますか? または、すべてのカスタム定数をインポートする他のタイプのファイルですか?
現在、1 つのクラスでブール定数が定義されていますが、定数に基づいてコードをコンパイルしたいと考えており、DEBUG では十分ではありません。私の次の解決策は、DEBUG が定義されている場合、ブール定数を追加することです。
ここで私の最後の解決策に代わる解決策はありますか? どんな助けでも大歓迎です。
c# - #if(DEBUG)とlog4netの行番号のソース/ランタイムの不一致
次のようなプリプロセッサディレクティブを使用する場合
これにより、実行時にログの行番号(スタックトレースなど)が正しくなくなります。上記の例では、残りがプリプロセッサによって解析されるため、行9は4になります。
ログ分析が非常に困難になります。
でメソッドを作成せずにこの問題を解決する方法はありConditionalAttribute
ますか?
私は知っていDebugger.IsAttached
ます(そして私は今このソリューションを使用しています)が、デバッガーが接続されているかどうかではなく、ビルドモード(デバッグ/リリース)に基づいてコードを実行したいと思います。