C++テンプレートテクニックposted with amazlet at 09.04.29επιστημη 高橋 晶 ソフトバンククリエイティブ 売り上げランキング: 238 Amazon.co.jp で詳細を見る C++のテンプレート本が発売された。id:faith_and_braveさんと、επιστημηさん(→ http://blogs.wankuma.com/episteme/ )の共著。 内容的には、C++のtemplateの初心者がModern C++ Design―ジェネリック・プログラミングおよびデザイン・パターンを利用するための究極のテンプレート活用術 (C++ In‐Depth Series)や、C++ Template Metaprogramming: Concepts, Tools, And Techniques From Boost And Beyond (C+
2008年の3月にリリースされたgdb-6.8の目玉機能の一つに「C++サポートの強化」があります*1。この機能を使うと、STLやboostのようなテンプレートを使ったコードのデバッグがかなり楽になります。C++使いの方は、是非gdbを6.8にupgradeしましょう。 具体的に、以下のようなコードを使って、「C++サポートの強化」について説明します。 #include <iostream> using namespace std; template <typename T> class A { public: void func() { cout << sizeof(T) << endl; } }; int main() { A<int> integer; A<double> real; integer.func(); real.func(); return 0; } このコードに対して
これは、1月20日に北海道にて行われた日本野望の会で披露したネタのまとめと解説のエントリーです。 そもそも こんなしょーもないネタを思いついたのは、このブログの昨年の検索キーワードトップ3が C++ FizzBuzz テンプレート だったから。それぞれのキーワードについては、 C++ - Wikipedia Fizz Buzz - Wikipedia テンプレート(プログラミング)- Wikipedia あたりを見てちょうだい。 特に、会場には「テンプレートって知らなーい」って人が2,3人いたのでテンプレートについてちゃんと説明したかったのですが、いかんせん時間が足りなすぎでした。テンプレートをまじめに語ると本が一冊書けてしまうので、端折りました。当然、ここでも端折ります。 上述のリンク先とかを見るか、テンプレートをまじめに語った本を一冊読んでくだせえ。 とりあえず、おいらのFizzBuz
C++ の template class、Java 5 に入った Generics、UML語でいうと parameterized class。型をパラメータ化して扱うこの記法は、特にコレクション系を型安全に実装する場合に大きな効果を発揮します。 実は、この要望はこれまでとてもたくさん頂いていて、なかなか実現できなかったものの1つです。リバースにまで突っ込む必要がありますし、既存のJavaクラス群をどうサポートするか、という問題もありました。今回、パラメタライズドクラスを JUDE で描けるようにしました。合わせて、Java 5 のリバース機能も入れたため、たとえば、java.utils.Collection 周りのソースもリバースできますし、これらを使った開発も積極的にUMLで記述できます。 詳しくは、開発者ブログ、こちらをどうぞ。 ■ template class http://jude
1. はじめに メタプログラミングとは、別のプログラムを生成できるプログラムを書くことです。この技法はさまざまな言語においてさまざまな目的で使用されています。メタプログラミングは、部分的な評価を行うことによって1つのプログラムを別のプログラムに変換する方法、言い換えれば、プログラミングを自動化する手段であるとも言えます[11]。メタプログラミングの典型例の1つは、出力としてプログラムを生成するLexやYACCなどのコンパイラ構築ツールです。コンパイラ自体もこのカテゴリに含めることができますが、コンパイラの場合は一般にホスト言語とドメイン言語が異なります[3]。通常、コンパイラは特定の文法に従って書かれたソースを入力として受け取り、CやC++、Javaなどのプログラムを出力します。 C++ではテンプレートとマクロを使用してコードを作成することができます。ただし、この方法は綿密に設計された機能
ソフト開発会社のプリファードインフラストラクチャーは2006年10月13日,CGI(Common Gateway Interface)を用いたWeb連携アプリケーションをC++言語で開発するためのソフトウエア部品群「AzaraC(あざらし)」をオープンソースとして公開した。ビュー(HTML)とロジック(C++)とを分離する開発が可能になる。ライセンスはBSDライセンスに準拠する。 AzaraCは,C++言語で書かれたWebアプリケーション開発フレームワークである。HTMLを記述して画面のビューを作るためのテンプレートと,テンプレートと連携して業務ロジックをC++言語で記述するためのC++ソース・コードとを分離するテンプレート・エンジンを中核とする。これにより,開発生産性とメンテナンス性が高まる。また,CGI経由で実行するアプリケーションはコンパイル済みのC++プログラムになるため,他のイン
プリファードインフラストラクチャーからC++でWebアプリケーションを開発するためのテンプレート・エンジンが公開されたようです。 WebアプリをC++で開発するためのテンプレート・エンジンをオープンソースとして公開 ソフト開発会社のプリファードインフラストラクチャーは2006年10月13日,CGI(Common Gateway Interface)を用いたWeb連携アプリケーションをC++言語で開発するためのソフトウエア部品群「AzaraC(あざらし)」をオープンソースとして公開した。ビュー(HTML)とロジック(C++)とを分離する開発が可能になる。ライセンスはBSDライセンスに準拠する。... 実際に使ってみたわけではないが、ドキュメント等を眺めてみると、ASP, JSP, PHP のように <% %> タグを使って変数を埋め込む形式のようです。できることなら、PHP のテンプレート・
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く