問題タブ [macros]
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++形式のマクロ/インラインostringstream
次のようなことができるマクロを作成しようとしています。FORMAT(a << "b" << c << d)
結果は文字列になります。これは、ostringstreamを作成し、を挿入a...d
して、を返すのと同じ.str()
です。何かのようなもの:
基本的に、FORMAT(a << "b" << c << d) == f()
。
まず、私は試しました:
最初の項目がC文字列(const char *
)の場合、文字列のアドレスを16進数で出力し、次の項目は正常に出力されます。最初の項目がである場合、std::string
コンパイルに失敗します(一致する演算子はありません<<
)。
これ:
正しい出力のように見えますが、もちろん文字列に0
とが含まれています。\b
以下は機能しているようですが、警告付きでコンパイルされます(一時的なアドレスを取得):
1がc-stringのアドレスを出力し、?でコンパイルできない理由を誰かが知っていstd::string
ますか?1と3は本質的に同じではありませんか?
C++0xの可変個引数テンプレートがformat(a, "b", c, d)
可能になると思います。しかし、これを今解決する方法はありますか?
eclipse - m4で開発するためのEclipseプラグインはありますか?
グーグルはほとんど、またはまったく出てきませんでした。
私は m4 で重いものを開発する必要があり、その機能を備えたお気に入りの環境でそれをやりたいと思っています。
windowsなど、ほぼすべてのプラットフォームで m4 を実行するためのパッケージがあります。したがって、少なくともデフォルトのプロジェクトを作成して CLI からテストできることはわかっています。しかし、私はむしろしたくない:)
visual-studio - 処理済み/未処理の例外でブレークを切り替えるための Visual Studio ショートカット/マクロはありますか?
私はマクロを作成しようとしてきましたが、同等のことを行います
- Ctrl+Alt+E を押して例外ウィンドウを表示する
- 「共通言語ランタイム例外」の「スロー」列のテキストボックスを切り替える
- 当たりOK
これを記録すると、何もしないマクロ コードの 1 行だけが記録されます。誰でもこれを行う方法を知っていますか?
sql - エラー2950を引き起こすSQLクエリ
このSQLクエリはMicrosoftAccess2003によって生成され、実行すると正常に機能しますが、マクロから実行しようとすると失敗します。クエリ内に明らかなエラーがありますか、またはそれが機能しない理由はありますか?
macros - R6RS Scheme の make-variable-transformer の利点は何ですか?
syntax-case
R6RSのセクションを見ていると、識別子マクロmake-variable-transformer
として記述されているキーワードが見つかりました。与えられた例は非常に最小限であり、なぜそれが必要なのか、またはどのようなユースケースでそれが必要なのかを理解するつもりはありません. その使用例をさらに見つけることも困難です。おそらく、何らかの形式の構文変換が可能になりますか、それともよりエレガントになりますか?
scheme - 式をネストするためのスキーム マクロ
次のような式を取るマクロをSchemeで(define-syntax
たとえば、を使用して)記述できますか?
そして、このような式を出力として生成しますか?
もちろん、任意の長さです。次のようなテンプレートを考えると、それを行う方法が思いつきません。
c++ - このプリプロセッサマクロを#includeに置き換えるにはどうすればよいですか?
更新: 明らかに、マクロではなくテンプレートまたは基本クラスを使用してこれを実行する必要があります。残念ながら、さまざまな理由で、テンプレートや基本クラスを使用できません。
現在、私はマクロを使用して、次のようにさまざまなクラスのフィールドとメソッドの束を定義しています。
FIELDS_AND_METHODS
は、文字列化およびトークン貼り付け演算子を使用する複数行のマクロです。
これを次のようなものに置き換えたいと思います
ここでは、クラスの名前(以前はマクロのパラメーター)を#defineし、FieldsNMethods.h
ファイルには元のマクロのコンテンツが含まれています。ただし、私は#includeしているので、デバッグ時に実行時にコードにステップインできます。
TYPE_NAME
ただし、ファイル内のプリプロセッサシンボルの「文字列化」と「トークンの貼り付け」に問題がありFieldsNMethods.h
ます。
たとえば、でクラスのデストラクタを定義したいFieldsNMethods.h
ので、次のようにの値を使用する必要がありTYPE_NAME
ます。
しかし、TYPE_NAME
その値に置き換えられました。
私が試みていることは可能ですか?マクロ定義を使用していないため、文字列化演算子とトークン貼り付け演算子を直接使用することはできません。
macros - Notepad ++のマクロを書く方法は?
Notepad ++のマクロを作成して、char1、char2、char3をそれぞれchar4、char5、char6に置き換えたいと思います。
latex - テキストをすべて小文字にする LaTeX コマンドはありますか?
ねえ、textsc コマンドを使用してレポートの最初のページに今日の日付を印刷するコマンドを作成しようとしていますが、今日の日付は 12 月を大文字にします。
どんな助けでも大歓迎です。
ide - 記録されたマクロの IDE の利点は何ですか?
タイトルが示すように、多くの編集者がマクロ記録を機能として売り込んでいますが、これらの機能を自分で利用する方法を見つけることができません。それで、あなたはそれを何に使うことができますか?マウスの動きやキーストロークを記録できるタイプですか?それは本当にそこにいる人々にとって本当に役に立ちますか?具体的に言うと、私は Eclipse を扱っています。Eclipse には多くの「埋め込み」機能が組み込まれているため、どのような利点があるかはわかりません。