ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
無料
ブラウザよりも高速アクセス!
 

C++11とテンプレートメタプログラミング

ショートカット: 違い類似点ジャカード類似性係数参考文献

C++11とテンプレートメタプログラミングの違い

C++11 vs. テンプレートメタプログラミング

C++11は、プログラミング言語 C++ のISO標準 ISO/IEC 14882:2011 の略称である。規格の策定中は2009年中の標準化を目指していたため、C++0x という仮称で呼ばれていた。 ISO/IEC 14882:2003 (C++03) に代わるものとして、2011年8月12日にISOによって承認された。後継のC++14が2014年8月18日に承認されている。 コア言語への機能追加や標準C++ライブラリの拡張を施し、C++TR1ライブラリの大部分を(数学的特殊関数ライブラリを除いて)取り込んでいる。. テンプレートメタプログラミング(template metaprogramming)は、メタプログラミング技法の一種であり、コンパイラがテンプレートを使って一時的ソースコードを生成し、それを他のソースコードと結合してコンパイルする方式である。テンプレートが出力するものは、コンパイル時の定数、データ構造、関数定義などがある。テンプレートの利用は言わばコンパイル時の実行である。この技法は様々な言語で使われている(C++、D言語、Eiffel、Haskell、ML、XLなど)。.

C++11とテンプレートメタプログラミング間の類似点

C++11とテンプレートメタプログラミングは(ユニオンペディアに)共通で8ものを持っています: 変数 (プログラミング)ポリモーフィズムメタプログラミングリテラルテンプレート (プログラミング)コンパイラ最適化ジェネリックプログラミングC++

変数 (プログラミング)

プログラミングにおいて、変数(へんすう、variable)とは、プログラムのソースコードにおいて、扱われるデータを一定期間記憶し必要なときに利用できるようにするために、データに固有の名前を与えたものである。 一人一人の人間が異なる名前によって区別されるように、一つ一つの変数も名前によって区別される。これにより、複数のデータを容易に識別することができる。変数名は一般に(字句的には)識別子である、ないし、変数の識別子のことを変数名という。一般に、変数が表しているデータをその変数の値(あたい)という。.

C++11と変数 (プログラミング) · テンプレートメタプログラミングと変数 (プログラミング) · 続きを見る »

ポリモーフィズム

ポリモーフィズム()とは、プログラミング言語の型システムの性質を表すもので、プログラミング言語の各要素(定数、変数、式、オブジェクト、関数、メソッドなど)についてそれらが複数の型に属することを許すという性質を指す。ポリモルフィズム、多態性、多相性、多様性とも呼ばれる。対義語はモノモーフィズム(Monomorphism)、単態性、単相性で、プログラミング言語の各要素が唯一つの型に属するという性質を指す。 ポリモーフィズムは次のようないくつかの種類に分けられる。.

C++11とポリモーフィズム · テンプレートメタプログラミングとポリモーフィズム · 続きを見る »

メタプログラミング

メタプログラミング (metaprogramming) とはプログラミング技法の一種で、ロジックを直接コーディングするのではなく、あるパターンをもったロジックを生成する高位ロジックによってプログラミングを行う方法、またその高位ロジックを定義する方法のこと。主に対象言語に埋め込まれたマクロ言語によって行われる。.

C++11とメタプログラミング · テンプレートメタプログラミングとメタプログラミング · 続きを見る »

リテラル

リテラル(literal)は、「文字どおり」「字義どおり」を意味する語で、 と同じくラテン語の (文字)に由来する。数理論理学とコンピュータプログラミングで異なる意味の専門用語として使われる。.

C++11とリテラル · テンプレートメタプログラミングとリテラル · 続きを見る »

テンプレート (プログラミング)

プログラミングにおけるテンプレートは、静的型付けのC++でデータ型にとらわれずにコードを書くことを可能にする機能であり、C++においてはジェネリックプログラミングに用いられる。 C++においてテンプレートは多重継承や演算子多重定義と並ぶ重要な機能となった。STL (Standard Template Library)はテンプレートによって構築されたフレームワークとなっている。.

C++11とテンプレート (プログラミング) · テンプレート (プログラミング)とテンプレートメタプログラミング · 続きを見る »

コンパイラ最適化

ンパイラ最適化(こんぱいらさいてきか、Compiler optimization)の記事では、コンピュータ・プログラムの最適化に関する話題のうち、もっぱらコンパイラに関係するものに関して説明する。最も一般的な要求はプログラムの実行時間を最小化することであり、その次に使用するメモリ量を最小化することである。また、携帯可能なコンピュータが増えるにつれて、消費電力を最小化するという最適化も生まれてきた。 一部のコード最適化問題はNP完全問題であることが示されている。実際には、プログラマがコンパイラによる最適化の完了を待てる時間の上限なども考慮してコンパイラ最適化を実装する(最適化はCPU時間とメモリを多大に使用する)。かつては、コンピュータのメモリ実装量も実行できる最適化を制限する要因だった。 コンパイラメーカによっては、「コンパイラの最適化の能力が売り上げや評判に大きく影響する」と信じている場合があり、そういう信念に従って「最適化コンパイラ」と銘打つことがある。少なくとも、同程度にバグが無いコンパイラ同士であれば、という前提の範囲内なら、最適化の能力が高いほうが魅力的と言えるであろう。.

C++11とコンパイラ最適化 · コンパイラ最適化とテンプレートメタプログラミング · 続きを見る »

ジェネリックプログラミング

ェネリック(総称あるいは汎用)プログラミング(generic programming)はデータ形式に依存しないコンピュータプログラミング方式である。.

C++11とジェネリックプログラミング · ジェネリックプログラミングとテンプレートメタプログラミング · 続きを見る »

C++

C++(シープラスプラス)は、汎用プログラミング言語の一つである。日本語では略してシープラプラ、シープラなどとも呼ばれる。.

C++とC++11 · C++とテンプレートメタプログラミング · 続きを見る »

上記のリストは以下の質問に答えます

C++11とテンプレートメタプログラミングの間の比較

テンプレートメタプログラミングが29を有しているC++11は、78の関係を有しています。 彼らは一般的な8で持っているように、ジャカード指数は7.48%です = 8 / (78 + 29)。

参考文献

この記事では、C++11とテンプレートメタプログラミングとの関係を示しています。情報が抽出された各記事にアクセスするには、次のURLをご覧ください:

ヘイ!私たちは今、Facebook上です! »