問題タブ [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.

0 投票する
5 に答える
3104 参照

c++ - コンパイル時の再帰はどのように機能しますか?

ここでコードを見つけましたループや条件なしで 1 から 1000 を印刷しています

誰かがコンパイル時の再帰がどのように機能するかを説明してもらえますか、Googleで見つけることができませんでした

ありがとうございました!

0 投票する
2 に答える
5505 参照

flash - ライブラリパスを設定せずに、ActionScriptでコンパイル時にSWCを埋め込む/インポートする

あられ、スタック!

ファイルへのライブラリパスを設定せずに、ActionScriptでSWCファイルを直接インポートする方法を理解するのに少し問題があります。

例として、次のようなものが必要です。

Loaderその上、クラスをロードしてSWCをインポートしたくありません(実際にはインポートできません) 。

さて、誰かがActionScriptコードのみを使用してSWCにリンクする方法を知っていますか?


編集済み

問題に関する詳細情報を追加するために、シナリオの詳細を紹介します...

私にはSubClass他のクラスから独立したクラスがあります。SuperClassSWC/SWF内にあるクラスを拡張します...

このSWC/SWFにはフレームワーク全体があります。1つのSWF内ですべてのクラスをコンパイルすることはできません。私のフレームワークのすべての部分はSWFから離れており、実行時にLoaderクラスによってダウンロードされます。

残念ながら、@frankhermesの回答は機能しません。そのメソッドはクラスをダウンロードせず、SWC内で他のクラスを拡張または使用することを許可しません。

ライブラリパスを設定すると、これが可能になります...

0 投票する
5 に答える
506 参照

c++ - フリー関数またはメンバー関数による拡張の仕組み

標準で含まれている C++ ライブラリのロードにより、オブジェクトをライブラリで使用するように適合させることができます。多くの場合、同じ名前空間内のメンバー関数またはフリー関数のどちらかを選択します。

ライブラリコードがこれらの「拡張」関数の1つを呼び出す呼び出しをディスパッチするために使用するメカニズムと構成を知りたいのですが、この決定はコンパイル時に行う必要があり、テンプレートが関係していることを知っています。次のランタイム疑似コードは不可能/無意味です。理由はこの質問の範囲外です。

上記のコードは、ランタイム コードのように見えます:/. では、ライブラリはクラスが存在する名前空間をどのように把握するのか、3 つの条件をどのように検出するのか、回避する必要があるその他の落とし穴にはどのようなものがあるのでしょうか。

私の質問の動機は、ライブラリでディスパッチ ブロックを見つけ、自分のコードで構成を使用できるようにすることです。したがって、詳細な回答が役立ちます。

!!報奨金を獲得するために!!

わかりましたので、Steve からの回答 (およびコメント) によると、ADL と SFINAE は、コンパイル時にディスパッチを配線するための重要な構成要素です。私は ADL (基本的に) と SFINAE (これも初歩的) の周りに頭を抱えています。しかし、私が思うように、彼らがどのように組織化されているかはわかりません。

オブジェクト内のユーザー提供のメンバー関数を呼び出すか、同じオブジェクトの名前空間で提供されるユーザー提供の自由関数を呼び出すかを、ライブラリがコンパイル時に選択できるように、これら 2 つの構造を組み合わせる方法の例を示したいと思います。これは、上記の 2 つの構成体を使用してのみ行う必要があり、いかなる種類のランタイム ディスパッチも使用しないでください。

問題のオブジェクトが と呼ばれNS::Car、このオブジェクトが の動作をMoveForward(int units)メンバー関数 ofc として提供する必要があるとします。動作がオブジェクトの名前空間から取得される場合、おそらく のようになりますMoveForward(const Car & car_, int units)。をディスパッチしたい関数を定義しましょうmover(NS::direction d, const NS::vehicle & v_)。ここで、方向は列挙型で、v_ は の基底クラスですNS::car

0 投票する
6 に答える
32513 参照

c++ - 関数への/からの配列(ポインタではない)の参照の受け渡しの一般的な規則は?

次のような関数に配列の参照を渡すことができます。

またはさらに良いことに、関数テンプレートを書くことができます:


今私の質問は、関数から配列の参照を返す方法ですか?

関数から次の型の配列を返したい:

whereMNはコンパイル時に認識されます!

関数との間で配列のコンパイル時の参照を渡したり返したりするための一般的なルールは何ですか? int (*a)[M][N]型の配列の参照を関数に渡すにはどうすればよいですか?

編集:

Adamのコメント:int (*a)[N]配列ではなく、配列へのポインタです。

はい。しかし、1 つの次元はコンパイル時にわかっています。コンパイル時にわかっているこの情報を関数に渡すにはどうすればよいでしょうか?

0 投票する
2 に答える
1313 参照

java - Javaでコンパイル時にコードを生成しますか?

RESTful リソースを表す一連のクラスと、実際に HTTP 要求を実行してオブジェクトを取得および構築するその他のヘルパー オブジェクトを作成しました。私のクラスは次のようになります:

ここで、POJO を処理するのが好きなフレームワークに接続するために、POJO クラスを使用したいと思うことがあります。

次のようなプロキシが必要です。

これらのプロキシ クラスのコードを維持する必要はありませんが、「リソース タイプ」のマスター クラスのみを維持する必要があります。

イントロスペクションを調べたところ、前述のプロキシ コードをオンデマンドで生成する方法に関するヒントが見つかりました。問題は、コンパイル時にコードを生成し、ライブラリと一緒にコンパイルすることは可能ですか? 多分私は間違った方向に進んでいて、面白くないことをしているのかもしれません;)

どう思いますか?ありがとう!

0 投票する
2 に答える
6547 参照

css - SASS: コンパイル時に変数を設定する

コンパイル時にsass変数を設定することは可能ですか? 私は基本的にこれをしたい:

css にコンパイルするときに、$color を「青」に設定したい (できればコマンド ラインから)。誰もこれを行うことができましたか?

ありがとう、クリス

0 投票する
5 に答える
2274 参照

c# - Visual Studio 2008/2010 でソリューション プロジェクトのコンパイル時および実行時のエラーをキャッチして保存する方法

現在、Visual Studio ソリューション エクスプローラーのプロジェクト/ソリューション/Web サイトがスローする可能性のあるコンパイル時間と実行時エラー (データベース テーブル内) を節約する方法を見つけようとしています。

事前に助けてくれてありがとう。

更新:今のところ、C# 言語のエラーのみをログに記録したいと思います。

これを実装する方法または解決策を必死に探しています...どんな助けでも大歓迎です...

NiK.

0 投票する
5 に答える
16816 参照

c++ - テンプレート引数に基づくコードの条件付きコンパイル時の包含/除外?

次のクラスを考えてみましょう。内部構造体Yが型として使用されています。テンプレートでは、後で:

さて、この例は明らかにコンパイルされません。2番目の例X<I>::Yはすでに定義されているか、テンプレートパラメータが多すぎるというエラーがあります。
(余分な)部分的な特殊化なしでそれを解決したいと思います。int Iパラメーターは唯一のものではなく、その位置は異なる部分的な特殊化で異なる​​可能性があるためです(私の実際の構造体はこのように見えます、上記は単純化のためです質問)、それで私はone class fits every I解決策が欲しいです。


私の最初の考えは明らかenable_ifにでしたが、それは私には失敗しているようです。それでも同じエラーが発生します:


したがって、enable_if失敗するので、次のコンパイル時チェックを実行する別の方法があることを願っています。


コードの重複を大幅に節約するだけですが、どういうわけか可能であれば本当に嬉しいです。
編集:残念ながら、私はVisual Studio 2010を使用しているので、明白な可変個引数テンプレートを使用できません。そのため、そこでサポートされているC++0xのものだけを使用できます。:/

0 投票する
3 に答える
159 参照

c++ - ビットが設定されているかどうかの検出(コンパイル時)

位置nのビットが定数変数に設定されているかどうかを検出するにはどうすればよいですか?

0 投票する
2 に答える
1552 参照

java - Java Generics - 包括的な「最初から最後まで」ガイド?

私は Java の一般的な概念について多くのことを読みました。私はすでにいくつかの疑問を抱いていましたが、StackOverflowに関する正確な回答でクリアされました。

この質問はここで以前に尋ねられたことはないと思います。
いろいろ探しました。しかし、この質問に対する答えはどこにも見つかりませんでした。


(a ) コンパイル時
(b) ランタイム実行 時に、汎用プログラム (Java) で何がどのように発生するか。

のように....
段階的に何が起こるのですか?
コンパイラが一般的な情報などを格納する場所...

誰かがサンプルコードで私を説明できますか?

ありがとう。

編集:すべての一般的な情報を削除する型消去のような概念は知っていますが、一般的なプログラムのすべての手順を知りません。