問題タブ [templates]

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 投票する
2 に答える
6896 参照

c++ - 構造体テンプレートをフレンドとしてマークするにはどうすればよいですか?

次のようなコードがあります。

テンプレートに友情を与える正しい構文は何ですか?

0 投票する
4 に答える
689 参照

c++ - テンプレート化されたスーパークラスのリンクの問題

テンプレート化されたスーパークラスを使用して、C++ クラスを作成しようとしています。アイデアは、似たような特性を持つ多数のスーパークラスから、似たようなサブクラスをたくさん簡単に作成できるということです。

問題のあるコードを次のように抽出しました。

template_test.h:

template_test.cpp:

main.cpp:

コードをビルドすると、シンボルTemplated<Base>::Templated(int)Templated<Base>::Foo()が見つからないというリンカ エラーが発生します。

main.cpp簡単なGoogleは、次を追加すると問題が解決することを示唆しています。

しかし、これでは問題は解決しません。行を追加してmain.cppも機能しません。(興味深いことに、それらを両方に追加すると、リンカーから「複数定義されたシンボル」エラーが発生するため、何かをしているに違いありません...)

ただし、すべてのコードを 1 つのソース ファイルに入れると、問題は解決します。これは上記の厄介な例では問題ありませんが、私が見ている実際のアプリケーションは、すべてを 1 つの cpp ファイルに入れることを余儀なくされた場合、非常に速く管理できなくなります。

私がやっていることさえ可能かどうか誰にも分かりますか? (どのように) リンカー エラーを解決できますか?

すべてのメソッドをインラインで作成でき、これでうまくいくと思いますがclass Templated、これも理想的ではないようです。

0 投票する
23 に答える
275973 参照

c++ - C++列挙型を文字列に簡単にマップする方法

使用しているいくつかのライブラリ ヘッダー ファイルに多数の列挙型があり、列挙型の値をユーザー文字列に変換する方法が必要です。その逆も同様です。

「ユーザー文字列」は列挙よりも少し読みやすくする必要があるため、RTTI はそれを行いません。

ブルート フォース ソリューションは、このような関数の束になりますが、少し C に似すぎているように感じます。

テンプレートを使用したエレガントなソリューションがあるという直感はありますが、まだ頭を悩ませることはできません。

更新:提案をありがとう - 列挙型がサードパーティのライブラリ ヘッダーで定義されていることを明確にする必要があるため、列挙型の定義を変更する必要はありません。

私の直感は、テンプレートを避けて、次のようにすることです。

0 投票する
11 に答える
22304 参照

java - Java用コード/テンプレートジェネレーター

C# については、CodeSmithをよく使用し、最近では Visual Studio の一部であるT4 ジェネレーターを使用しています。

私はすべての Java 開発を Eclipse IDE を使用して行っているため、Java に似たもの、特に Eclipse アドインを探しています。

0 投票する
10 に答える
286149 参照

c++ - テンプレート パラメータに 'class' または 'typename' を使用しますか?

重複の可能性:
テンプレートのキーワード 'typename' と 'class' の C++ の違い

関数テンプレートまたはクラス テンプレートを C++ で定義する場合、次のように記述できます。

またはこれを書くことができます:

どちらかを優先する正当な理由はありますか?


私は最も人気のある (そして興味深い) 回答を受け入れましたが、本当の回答は「いいえ、どちらかを優先する正当な理由はありません」のようです。

  • これらは同等です (下記を除く)。
  • を常に使用する理由がある人もいますtypename
  • を常に使用する理由がある人もいますclass
  • 両方を使用する理由がある人もいます。
  • どちらを使うか気にしない人もいます。

ただし、テンプレート テンプレートパラメーターの場合、C++17 より前では、class代わりに を使用するtypename必要があったことに注意してください。以下のuser1428839の回答を参照してください。(しかし、この特定のケースは好みの問題ではなく、言語の要件でした。)

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

php - ファイル内のネストされたタグの解析

私は疑問に思っています-次のようなものを解析する最も効果的な方法は何ですか:

もちろん、これは最終的にいくらかのテンプレート システムになることを意図しているので、私の計画は、このようなものとして、テンプレートを「配置」するハッシュマップを作成することです。

「セクション」(# で始まるタグ) は複数回繰り返すことができることに注意してください。

また、任意のセクションには、任意の数の他のセクションと通常のタグを含めることができます...

それで..どうやってやったの?

0 投票する
10 に答える
187947 参照

c++ - テンプレート テンプレート パラメータの用途は何ですか?

テンプレート テンプレート パラメーター (テンプレートをパラメーターとして受け取るテンプレート) を使用してポリシー ベースのクラス設計を行う C++ の例をいくつか見てきました。この技術には他にどのような用途がありますか?

0 投票する
1 に答える
31802 参照

templates - ソフトウェア/システム ハンドオーバー テンプレート - 良い例はありますか?

リリースしたばかりの企業 Web サイトの更新について、コンテンツ編集者に引き渡す必要があります。どうやら、ノートを使ったトレーニング セッションでは十分ではありません。けっこうだ。

そのため、さらに恐ろしいドキュメントが迫っています。Google でかなり短いトロールを行った後、Web サイトまたは Web アプリケーションのハンドオーバーの基礎として使用する、適切で使用可能なテンプレートを見つけることができませんでした。そのようなドキュメントに表示されるべきであると私が見つけた最も有用なアイテムのリストは、Experts Exchange (敵) にありました。

  1. システム概要・総論紹介
  2. プロセスと部門間のプロセス フロー
  3. システム構成、セットアップ、および依存関係
  4. 技術的な要件、機能、制限
  5. サポートプロセス
  6. トラブルシューティングのための関係者のエスカレーション リストと連絡先情報

これは、作業を行うための優れた基礎です。サイトのコンテンツを変更するだけのユーザーのために「簡単に説明」できますが、クラウドで利用できる優れた標準テンプレートを知っている人はいますか? このリストに追加すべきものは他にありますか?

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

c++ - C++ テンプレート関数のオーバーロード

以下は、「c++ プログラミング言語」の行です。

sqrt(z) ; の理由がわかりません。呼び出しsqrt<double>(complex<double>)は誰でもできます。説明してください。

著者によると、 T sqrt<complex<T>> より専門化されていますが、それを使用しない理由についてT sqrt <T>別の宣言がありtemplate<class T > complex<T> sqrt(complex<T>);ますか?

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

.net - aspx レンダリング エンジンを使用して非 HTML を生成する

非 HTML を生成するために、asp テンプレート エンジン (部分的なコード ビハインド クラス、動的 <% ... %> ブロックなど) を使用することは可能ですか? コードを動的に生成するためのクリーンで保守可能な方法が必要です。(具体的には、データベースから値を入力した LaTeX コードを生成したいと考えています。)

現在、私のLaTeXテンプレートは、データベースの値でstring.replaceするプレースホルダーを持つリソース文字列です。このソリューションは、メンテナンスとクリーニングが急速に困難になりました。aspx マークアップの動的ブロックを使用したいのですが、a) 出力が HTML でない場合に aspx が適合するかどうか、b) 実際に結果を .tex ファイルにレンダリングする方法がわかりません。 .

生成コード自体は C# .dll にあります。.NET 3.5 を使用しています

これは可能ですか?前もって感謝します。