タグ付けされた質問 「templates」

テンプレートタグは、汎用プログラミング(特にC ++)、およびテンプレートエンジンを使用したデータ/ドキュメントの生成など、複数のコンテキストで使用されます。このタグを実装の重い質問に使用する場合-実装が記述されているコード言語にタグを付けます。

5
mustache.jsでif / elseを実行するにはどうすればよいですか?
口ひげでこれを行う方法を理解できないのはかなり奇妙に思えます。サポートされていますか? これは私の悲しい試みです: {{#author}} {{#avatar}} <img src="{{avatar}}"/> {{/avatar}} {{#!avatar}} <img src="/images/default_avatar.png" height="75" width="75" /> {{/avatar}} {{/author}} これは明らかに正しくありませんが、ドキュメントではこのようなことは何も述べられていません。「else」という言葉は言及されていません:( また、なぜ口ひげはこのように設計されているのですか?この種のことは悪いと考えられていますか?モデル自体にデフォルト値を設定することを強制しようとしていますか?それが不可能な場合はどうですか?

11
JavaでClass <T>を使用する方法
Genericsと、この質問で背後で実際に何が行われるかについての良い議論があります。そのため、これVector&lt;int[]&gt;は整数配列のベクトルでHashTable&lt;String, Person&gt;あり、キーが文字列と値であるテーブルですPerson。しかし、私を困らせるのはの使用法ですClass&lt;&gt;。 javaクラスClassはテンプレート名も受け取ることになっています(または、Eclipseの黄色い下線が表示されます)。何を入れればいいのか分かりません。Classオブジェクトの要点は、反射などのために、オブジェクトに関する情報が完全にない場合です。Classオブジェクトが保持するクラスを指定するのはなぜですか?はっきりとわからない、またはClassオブジェクトを使用しない、特定のオブジェクトを使用する。

8
underscore.jsテンプレートのifステートメントの使用方法
underscore.jsテンプレート関数を使用しており、次のようなテンプレートを作成しました。 &lt;script type="text/template" id="gridItem"&gt; &lt;div class="griditem &lt;%= gridType %&gt; &lt;%= gridSize %&gt;"&gt; &lt;img src="&lt;%= image %&gt;" /&gt; &lt;div class="content"&gt; &lt;span class="subheading"&gt;&lt;%= categoryName %&gt;&lt;/span&gt; &lt;% if (date) { %&gt;&lt;span class="date"&gt;&lt;%= date %&gt;&lt;/span&gt;&lt;% } %&gt; &lt;h2&gt;&lt;%= title %&gt;&lt;/h2&gt; &lt;/div&gt; &lt;/div&gt; &lt;/script&gt; ご覧のとおり、すべてのモデルに日付パラメーターがないため、そこにifステートメントがあります。ただし、この方法ではエラーが発生しますdate is not defined。では、テンプレート内のifステートメントをどのように実行できますか?


8
Djangoテンプレート変数を使用して辞書値を検索する方法
mydict = {"key1":"value1", "key2":"value2"} Djangoテンプレートで辞書値を検索する通常の方法は{{ mydict.key1 }}、 {{ mydict.key2 }}です。キーがループ変数の場合はどうなりますか?つまり: {% for item in list %} # where item has an attribute NAME {{ mydict.item.NAME }} # I want to look up mydict[item.NAME] {% endfor %} mydict.item.NAME失敗します。これを修正するには?

10
ラムダ関数をテンプレート化できますか?
C ++ 11では、ラムダ関数をテンプレート化する方法はありますか?それともテンプレート化するには本質的に具体的すぎますか? 代わりに、古典的なテンプレートクラス/ファンクタを定義できることを理解していますが、問題はより似ています:言語はテンプレートのラムダ関数を許可しますか?
230 c++  templates  lambda  c++11 

6
テンプレート引数として渡される関数
C ++テンプレート関数を引数として渡すことに関するルールを探しています。 これは、次の例に示すように、C ++でサポートされています。 #include &lt;iostream&gt; void add1(int &amp;v) { v+=1; } void add2(int &amp;v) { v+=2; } template &lt;void (*T)(int &amp;)&gt; void doOperation() { int temp=0; T(temp); std::cout &lt;&lt; "Result is " &lt;&lt; temp &lt;&lt; std::endl; } int main() { doOperation&lt;add1&gt;(); doOperation&lt;add2&gt;(); } ただし、この手法について学ぶことは困難です。「テンプレート引数としての関数」のグーグルはあまり役に立ちません。そして、古典的なC ++テンプレートの完全ガイドでは、驚くべきことに、それについても説明していません(少なくとも私の検索では)。 私が持っている質問は、これが有効なC ++(または単に広くサポートされている拡張機能)かどうかです。 また、この種のテンプレート呼び出し中に、同じシグネチャを持つファンクターを明示的な関数と交換可能に使用できるようにする方法はありますか? 上記のプログラムでは、少なくともVisual …

13
C ++ STLが非常にテンプレートに基づいているのはなぜですか?(*インターフェイス*ではありません)
つまり、必須の名前(標準テンプレートライブラリ)は別として... C ++は当初、OOPの概念をCに提示することを目的としていました。つまり、クラスとクラス階層に基づいて、特定のエンティティが(実行方法に関係なく)実行できることと実行できないことを区別できます。機能のいくつかの構成は、多重継承の問題と、C ++が(Javaなどと比較して)やや不格好な方法でインターフェースの概念をサポートしているという事実のために、この方法で説明することがより困難ですが、それはあります(そして改善された)。 そして、STLとともにテンプレートが登場しました。STLは、古典的なOOPの概念を取り入れ、代わりにテンプレートを使用してそれらをドレインに流しているように見えました。 テンプレートを使用してタイプを一般化する場合は、タイプテーマ自体がテンプレートの操作に無関係である場合(コンテナーなど)、ケースを区別する必要があります。持つvector&lt;int&gt;完璧な理にかなっています。 ただし、他の多くの場合(イテレーターとアルゴリズム)、テンプレート化された型は、概念の実際の詳細が完全にテンプレートの実装によって定義される「概念」(入力イテレーター、順方向イテレーターなど)に従う必要があります。テンプレートで使用されるタイプのクラスではなく、関数/クラス。これは、OOPの使用法とはやや反対です。 たとえば、関数に次のように伝えることができます。 void MyFunc(ForwardIterator&lt;...&gt; *I); 更新:元の質問では不明確だったので、ForwardIteratorをテンプレートにしてすべてのForwardIteratorタイプを許可しても問題ありません。逆に、ForwardIteratorをコンセプトとして使用しています。 は、その定義を見るだけでForward Iteratorを期待します。ここで、実装またはドキュメントのいずれかを調べる必要があります。 template &lt;typename Type&gt; void MyFunc(Type *I); テンプレートの使用に賛成できる2つの主張:コンパイルされたコードは、vtablesを使用する代わりに、使用された型ごとにテンプレートをカスタマイズしてコンパイルすることで、より効率的になります。また、テンプレートはネイティブタイプで使用できるという事実。 ただし、STLのテンプレート化を支持して古典的なOOPを放棄するより深い理由を探していますか?(ここまで読んだとすると:P)
211 c++  oop  templates  stl 

7
新しいC#クラス/インターフェイスのVisual Studioテンプレートを編集するにはどうすればよいですか?
Visual Studioで作成したほぼすべてのC#ファイルから、次のインポートステートメントを削除していることに気づきました。 using System.Collections.Generic; using System.Linq; using System.Text; もちろん、Resharperでこれを行うのは本当に簡単ですが、私は本当にそうする必要はありません。 VSディレクトリのどこかにいくつかのテンプレート(クラス、インターフェイス)が必要です。そこから問題の行を削除できます。これらのファイルはどこにありますか?デフォルトのインポートリストを制御するより良い方法はありますか?

18
jQueryテンプレートエンジン[終了]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 3年前休業。 この質問を改善する クライアント側を使用するテンプレートエンジンを探しています。私はjsRepeaterやjQueryテンプレートのようなものをいくつか試してきました。FireFoxでは問題なく動作しているように見えますが、IE7では、HTMLテーブルのレンダリングに関してはすべてが機能しないようです。 MicrosoftAjaxTemplates.js(http://www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=16766から)も確認しましたが、同じ問題があることがわかりました。 使用する他のテンプレートエンジンに関するアドバイスはありますか?

13
C#とJavaのジェネリックスとC ++のテンプレートの違いは何ですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 6年前休業。 ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 私は主にJavaを使用しており、ジェネリックは比較的新しいものです。Javaが間違った決定をしたか、.NETの方が実装が優れているなど、私は読み続けています。 では、ジェネリックにおけるC ++、C#、Javaの主な違いは何ですか?それぞれの長所/短所?
203 c#  java  c++  generics  templates 

3
thisポインタを通じてテンプレートの基本クラスメンバーにアクセスする必要があるのはなぜですか?
以下のクラスはテンプレートでなかった場合、私は単に持っている可能性がxでderivedクラス。ただし、以下のコードでは、を使用する必要がありますthis-&gt;x。どうして? template &lt;typename T&gt; class base { protected: int x; }; template &lt;typename T&gt; class derived : public base&lt;T&gt; { public: int f() { return this-&gt;x; } }; int main() { derived&lt;int&gt; d; d.f(); return 0; }

3
Handlebars.jsの各ループのスコープ外の変数にアクセスする
次のように、handlebars.jsテンプレートがあります。 {{externalValue}} &lt;select name="test"&gt; {{#each myCollection}} &lt;option value="{{id}}"&gt;{{title}} {{externalValue}}&lt;/option&gt; {{/each}} &lt;/select&gt; そして、これは生成された出力です: myExternalValue &lt;select name="test"&gt; &lt;option value="1"&gt;First element &lt;/option&gt; &lt;option value="2"&gt;Second element &lt;/option&gt; &lt;option value="3"&gt;Third element &lt;/option&gt; &lt;/select&gt; 予想通り、のすべての要素のidおよびtitleフィールドにアクセスしてmyCollection、selectを生成できます。そして、selectの外では、externalValue変数が正しく出力されます( "myExternalValue")。 残念ながら、オプションのテキストでexternalValueは、値は出力されません。 私の質問は、ループ内からそれぞれhandlebars.jsのスコープ外の変数にアクセスするにはどうすればよいですか?

5
関数テンプレートのデフォルトのテンプレート引数
デフォルトのテンプレート引数がクラステンプレートでのみ許可されているのはなぜですか?メンバー関数テンプレートでデフォルトの型を定義できないのはなぜですか?例えば: struct mycclass { template&lt;class T=int&gt; void mymember(T* vec) { // ... } }; 代わりに、C ++は、デフォルトのテンプレート引数がクラステンプレートでのみ許可されることを強制します。
187 c++  templates 


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.