問題タブ [compiler-directives]
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.
delphi - Delphi #IF(DEBUG) 相当?
C# の #if(DEBUG) コンパイラ ディレクティブに相当する Delphi はありますか?
.net - #VB.netの警告ディレクティブ
#warningディレクティブがvb.netに存在しないことを知っています...そのようなものはありますか?
コンパイラ時にメッセージ(警告)をスローできるようにしたい。
delphi - {$ IOCHECKS OFF}の影響を受けるすべてのAPIは何ですか?
{$I-}
、別名を使用する古いDelphiコード(Turbo Pascalコードとして作成された可能性もあります)があります。これにより、コードはディスクI/Oエラーの例外の代わりにIOResultを使用します。{$
IOCHECKS
OFF}
を取り除き、{$I-}
このコードを1990年代に持ち込みたいのですが、そのためには、すべてがの影響を受けるものを知りたいと思い{$IOCHECKS OFF}
ます。これは、AssignFile / Reset / Rewrite / Append/CloseFileのような古い組み込みのI/O関数にのみ影響しますか?それとも、TFileStreamのようなより現代的なものにも影響しますか?さらに重要なことに、私が考えていない他に何が影響を受ける可能性がありますか?(Delphi Basicsは、MkDirとRmDirにも影響することを示唆しています。これらに影響する場合は、さらに多くの機能が必要です。)
Delphi 2007ヘルプトピック「入出力チェック(Delphi)」(ms-help://borland.bds5/devcommon/compdirsinput_outputchecking_xml.html
)には、これは「I / Oプロシージャ[s]」に影響し、「I/OプロシージャはDelphi言語ガイドに記載されています」と記載されています。CodeGearは言語ガイドを出荷したことがなく、Borlandが最後に出荷したのはDelphi 5だったので、これはあまり役に立ちません。
どの関数とクラスが下で異なった振る舞いをし{$I-}
ますか?
編集:受け入れられた答えはいくつかの素晴らしい背景を提供しますが、アルファベット順のリスト形式の簡単な要約があります:システムユニットからの次のルーチンに{$IOCHECKS OFF}
のみ影響します。
- 追加する
- BlockRead
- BlockWrite
- ChDir
- CloseFile
- Eof
- Eoln
- 消去
- FilePos
- ファイルサイズ
- 流す
- MkDir
- 読む
- Readln
- 名前を変更
- リセット
- リライト
- RmDir
- 求める
- SeekEof
- SeekEoln
- SetLineBreakStyle
- 切り捨てる
- 書く
- Writeln
properties - @property と @synthesize: なぜ両方?
私は X コードの学習曲線を約 2 か月間上っています。@property/@synthesize ディレクティブの目的は理解できますが、常に .h ファイルでプロパティを宣言し、.m ファイルでそれらを合成するのは少し冗長なようです。
コンパイラが両方のディレクティブを必要とするのはなぜですか? それらが常に一緒に使用される場合、そのうちの 1 つが技術的に冗長ではありませんか?
この件に関する洞察をお寄せいただきありがとうございます。
ジョン・ドナー
c# - C# でプロジェクト全体に #define を設定する方法
現在リリースまたはデバッグの準備ができていないアプリケーションの特定のビルドにのみ必要なクラスがプロジェクトにいくつかあります。
これらのクラスが使用されないようにするために、次のように設定します。
残念ながら、プロジェクト全体の #define を設定する方法がわかりません。
プロジェクト全体の定義を設定する Visual Studio の機能はありますか?
今は必要ありませんが、ソリューション全体の定義を設定する機能はありますか?
そのような機能がない場合 (C# にはインクルード ファイルがないため、可能だと思います)、コマンド ライン コンパイラと /D を使用せずにこの機能を実行する方法またはプラグインはありますか?
delphi - DelphiIFDEfコンパイラ指令を自動的に削除する
私は現在、Delphi 2に戻って、Delphiのバージョンに基づいた条件付きコンパイラ指令の全体を(ランダムに散在している)「継承された」コードで作業しています。今後、すべての開発はDelphi2009以降で行われます。指定された「最小」バージョンに基づいてコンパイラの条件付きコードセグメントを自動的に削除するツール、またはプラグインはDelphi 2009にありますか?
c# - デバッグとリリースのC#if/thenディレクティブ
ソリューションのプロパティで、唯一のプロジェクトの構成を「リリース」に設定しています。
メインルーチンの最初にこのコードがあり、「Mode=Debug」と表示されています。また、一番上に次の2行があります。
私は正しい変数をテストしていますか?
私の目標は、デバッグモードとリリースモードに基づいて、変数に異なるデフォルトを設定することです。
c++ - C ++で整数計算をfloatに暗黙的にキャストする
整数計算を暗黙的に float にキャストするディレクティブまたはパラメーターを持つコンパイラーはありますか。例えば:
計算の定数(1、3、10)は整数であるため、「f」は「0」です。整数演算をコンパイラ指令やパラメータで変換したい。つまり、そのような明示的なキャストや ".f" プレフィックスは使用しません。
また
明示的なキャストや「.f」を使用せずにこのプロセスを実行するためのパラメーターを持つ c/c++ コンパイラを知っていますか?
c# - C#コンパイラディレクティブ
私はいくつかのC#コードを見ていますが、次のステートメントに出くわしました。
DEBUGは次のようにどこかで定義されると思いました。
しかし、コードは設定されているかのように動作しているように見えますが、そのような定義を見つけることができません。DEBUGは特殊なケースですか?もしそうなら、どのように設定/設定解除されますか?