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

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

17
テンプレートをヘッダーファイルにのみ実装できるのはなぜですか?
C ++標準ライブラリからの引用:チュートリアルとハンドブック: 現在、テンプレートを使用する唯一の移植可能な方法は、インライン関数を使用してヘッダーファイルにテンプレートを実装することです。 どうしてこれなの? (明確化:ヘッダーファイルは唯一のポータブルソリューションではありませんが、最も便利なポータブルソリューションです。)
1778 c++  templates  c++-faq 

6
「テンプレート」と「タイプ名」のキーワードをどこに、なぜ配置しなければならないのですか?
テンプレートでは、どこで、なぜ私は配置する必要がありますtypenameし、template依存名に? とにかく依存名は正確には何ですか? 私は次のコードを持っています: template <typename T, typename Tail> // Tail will be a UnionNode too. struct UnionNode : public Tail { // ... template<typename U> struct inUnion { // Q: where to add typename/template here? typedef Tail::inUnion<U> dummy; }; template< > struct inUnion<T> { }; }; template <typename T> // …

13
C ++テンプレート関数定義を.CPPファイルに保存する
ヘッダーのインラインではなく、CPPファイルに保存したいテンプレートコードがあります。使用されるテンプレートの種類がわかっている限り、これを実行できます。例えば: .hファイル class foo { public: template <typename T> void do(const T& t); }; .cppファイル template <typename T> void foo::do(const T& t) { // Do something with t } template void foo::do<int>(const int&); template void foo::do<std::string>(const std::string&); 最後の2行に注意してください。foo:: doテンプレート関数は、intとstd :: stringsでのみ使用されるため、これらの定義はアプリがリンクすることを意味します。 私の質問は-これは厄介なハックですか、それとも他のコンパイラ/リンカーで動作しますか?現在、このコードはVS2008でのみ使用していますが、他の環境に移植したいと考えています。
526 c++  templates 

30
有用なEclipse Javaコードテンプレートを探す[終了]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 6年前休業。 EclipseでさまざまなJavaコードテンプレートを作成できます。 ウィンドウ>設定> Java>エディター>テンプレート 例えば sysout 次のように展開されます: System.out.println(${word_selection}${});${cursor} あなたは次のように入力して、これをアクティブにすることができますsysoutが続きますCTRL+SPACE 現在、どのような有用なJavaコードテンプレートを使用していますか?それの名前と説明、そしてそれが素晴らしい理由を含めてください。 組み込みの既存の機能ではなく、テンプレートのオリジナル/新規の使用を探しています。 Log4Jロガーを作成する ディスプレイからSWTカラーを取得 Syncexec-Eclipseフレームワーク シングルトンパターン/列挙型シングルトン生成 Readfile 定数 描きます フォーマット文字列 コメントコードレビュー 文字列フォーマット 最後にロックを試す メッセージ形式i18nおよびログ Equalsbuilder ハッシュコードビルダー スプリングオブジェクトインジェクション FileOutputStreamを作成する

5
テンプレートのキーワード「typename」と「class」の違いは?
テンプレートについては、両方の宣言を見てきました。 template < typename T > template < class T > 違いは何ですか? そして、これらのキーワードは、次の例(テンプレートに関するドイツ語版ウィキペディアの記事から引用)で正確にどういう意味ですか? template < template < typename, typename > class Container, typename Type > class Example { Container< Type, std::allocator < Type > > baz; };
504 c++  templates  keyword 

27
クラスメンバー関数の存在のテンプレートチェック?
クラスで特定のメンバー関数が定義されているかどうかに応じて動作を変更するテンプレートを作成することは可能ですか? これが私が書きたいことの簡単な例です: template<class T> std::string optionalToString(T* obj) { if (FUNCTION_EXISTS(T->toString)) return obj->toString(); else return "toString not defined"; } したがって、定義されclass Tている場合はtoString()、それを使用します。そうでなければ、それはしません。方法がわからない魔法の部分は、「FUNCTION_EXISTS」部分です。

7
<script type =“ text / template”>…</ script>の説明
今まで見たことのないものに出会っただけです。Backbone.jsのサンプルTODOアプリケーションのソース(Backbone TODO Example)では、テンプレートが内にあり&lt;script type = "text/template"&gt;&lt;/script&gt;、PHPの外見のように見えるコードが含まれていますが、JavaScriptタグが含まれています。 誰かがこれを私に説明できますか?これは合法ですか?

22
AngularJS部分ビューに基づいてヘッダーを動的に変更するにはどうすればよいですか?
AngularJSの部分ビューを含めるためにng-viewを使用しており、含まれているビューに基づいてページタイトルとh1ヘッダータグを更新したいと思います。ただし、これらは部分的なビューコントローラーの範囲外であるため、コントローラーのデータセットにバインドする方法を理解できません。 ASP.NET MVCの場合、@ ViewBagを使用してこれを行うことができますが、AngularJSで同等のものを知りません。共有サービス、イベントなどについて検索しましたが、まだ機能していません。それが機能するように私の例を変更する方法は大歓迎です。 私のHTML: &lt;html data-ng-app="myModule"&gt; &lt;head&gt; &lt;!-- include js files --&gt; &lt;title&gt;&lt;!-- should changed when ng-view changes --&gt;&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;h1&gt;&lt;!-- should changed when ng-view changes --&gt;&lt;/h1&gt; &lt;div data-ng-view&gt;&lt;/div&gt; &lt;/body&gt; &lt;/html&gt; 私のJavaScript: var myModule = angular.module('myModule', []); myModule.config(['$routeProvider', function($routeProvider) { $routeProvider. when('/test1', {templateUrl: 'test1.html', controller: Test1Ctrl}). when('/test2', {templateUrl: …

10
Pretty-print C ++ STLコンテナ
この投稿の最後にある更新に注意してください。 更新:このライブラリ用にGitHubで公開プロジェクトを作成しました! 私は、すべてのSTLコンテナーをを介してきれいに印刷することをすべて一度に処理する単一のテンプレートが欲しいと思いoperator&lt;&lt;ます。疑似コードで、私はこのようなものを探しています: template&lt;container C, class T, String delim = ", ", String open = "[", String close = "]"&gt; std::ostream &amp; operator&lt;&lt;(std::ostream &amp; o, const C&lt;T&gt; &amp; x) { o &lt;&lt; open; // for (typename C::const_iterator i = x.begin(); i != x.end(); i++) /* Old-school */ for (auto i …

1
C ++テンプレートtypedef
クラスがあります template&lt;size_t N, size_t M&gt; class Matrix { // .... }; サイズNおよび1のa と同等の(列ベクトル)typedefを作成するa を作成します。そのようなもの:VectorMatrix typedef Matrix&lt;N,1&gt; Vector&lt;N&gt;; コンパイルエラーが発生します。以下は似たようなものを作成しますが、正確には私が望んでいるものではありません。 template &lt;size_t N&gt; class Vector: public Matrix&lt;N,1&gt; { }; 解決策またはそれほど高価ではない回避策/それに対するベストプラクティスはありますか?
369 c++  templates  c++11  typedef 


7
テンプレート化を容易にするためのJSPトリック?
仕事では、たくさんのHTMLファイルをシンプルなJSPプロジェクトに変換する仕事を任されてきました。実際にはすべて静的であり、プログラムするサーバー側ロジックはありません。私はJavaがまったく初めての人であることを述べておきます。JSPファイルは、のように一般的なインクルードと変数を簡単に操作できるように見えますが、PHPテンプレートの継承(Djangoスタイル)などの簡単な方法を知りたい、または少なくともbase.jspファイルを含むことができるようにしたいヘッダーとフッターなので、後でコンテンツを挿入できます。 ベン・リングスは、ここで彼の答えにいくつかの希望を与えているようです: JSPテンプレートの継承 誰かがこれを達成する方法を説明できますか? 時間がないことを考えると、動的ルーティングは少し多いと思うので、URLを.jspファイルに直接マップさせてよかったと思いますが、私は提案を受け入れます。 ありがとう。 編集:外部ライブラリを使用したくありません。自分やプロジェクトに携わっている他の人にとって学習曲線が増えるため、私が働いている会社がこれを行うように契約しているからです。 別の編集:JSP tagsコンテンツにテンプレート変数が実際にはないため、役に立つかどうかはわかりません。私が必要なのはこれを行うことができる方法です: base.html: &lt;html&gt;&lt;body&gt; { content.body } &lt;/body&gt;&lt;/html&gt; somepage.html &lt;wrapper:base.html&gt; &lt;h1&gt;Welcome&lt;/h1&gt; &lt;/wrapper&gt; 出力は次のとおりです。 &lt;html&gt;&lt;body&gt; &lt;h1&gt;Welcome&lt;/h1&gt; &lt;/body&gt;&lt;/html&gt; これにより、必要なすべてを実行するのに十分な汎用性が得られると思います。それで達成することができますが、includesその場合、ラッパーごとにトップとボトムのインクルードが必要になります。


3
ジンジャに変数を設定する
jinjaで変数を別の変数に設定する方法を知りたいのですが。説明します。サブメニューがあり、どのリンクがアクティブであるかを表示したいと思います。私はこれを試しました: {% set active_link = {{recordtype}} -%} ここで、recordtypeはテンプレートに指定された変数です。

28
C ++アプリケーションにリフレクションを追加するにはどうすればよいですか?
C ++クラスの名前、内容(つまり、メンバーとそのタイプ)などをイントロスペクトできるようにしたいと思います。ここでは、リフレクションのあるマネージC ++ではなく、ネイティブC ++について話しています。C ++がRTTIを使用していくつかの限られた情報を提供することを理解しています。この情報を提供できる追加のライブラリ(または他の手法)はどれですか?

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