翻訳と辞書
Words near each other
・ テンプル・ブロック
・ テンプル大学
・ テンプル教会
・ テンプル駅
・ テンプル騎士修道会
・ テンプル騎士団
・ テンプレ
・ テンプレート
・ テンプレート (プログラミング)
・ テンプレート (曖昧さ回避)
テンプレートの部分特殊化
・ テンプレートエンジン
・ テンプレートマッチング
・ テンプレートメタプログラミング
・ テンプレート一覧
・ テンベストSHOW
・ テンベールシチナ
・ テンペ
・ テンペイ
・ テンペスタ


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

テンプレートの部分特殊化 : ミニ英和和英辞書
テンプレートの部分特殊化[てんぷれーとのぶぶんとくしゅか]
=====================================
〔語彙分解〕的な部分一致の検索結果は以下の通りです。

テン : [てん]
 【名詞】 1. 10 2. ten 3. (P), (n) 10/ten
: [ちょうおん]
 (n) long vowel mark (usually only used in katakana)
部分 : [ぶぶん]
 【名詞】 1. portion 2. section 3. part 
: [ぶん, ふん]
  1. (n,n-suf,pref) (1) part 2. segment 3. share 4. ration 5. (2) rate 6. (3) degree 7. one's lot 8. one's status 9. relation 10. duty 1 1. kind 12. lot 13. (4) in proportion to 14. just as much as 1
特殊 : [とくしゅ]
  1. (adj-na,n) special 2. unique 
: [か]
 (suf) action of making something

テンプレートの部分特殊化 : ウィキペディア日本語版
テンプレートの部分特殊化[てんぷれーとのぶぶんとくしゅか]
テンプレートの部分特殊化 (Partial template specialization)は、C++の用語で、テンプレートにおいて、特定のテンプレート実引数が与えられたときに、元と異なる定義を使用させるようにする仕組みである。
==テンプレートと明示的特殊化==
テンプレートはメタクラスである。つまりコンパイラに対してどのようなクラスを作るかを指示したある種の抽象データ型であると言える。たとえばテンプレートであるvector(動的配列)をプログラマが使うときには、vectorvectorなどのようにデータ型を指定して実体化する。実体化されたvectorは、コンパイラの生成したオブジェクトコードの中ではそれぞれ別のコードが生成され、それぞれ別のクラスとして扱われる。
もしテンプレートクラスは特定のデータ型を指定して使われることが多いと知っており、そのデータ型の場合にだけ人の手で最適化をかけられる(たとえば整数型のときは2の乗数での乗除算をシフト演算にするなど)としたら、通常の場合のテンプレートとは別に、明示的特殊化を行うことができる。テンプレートを使用する際に指定されたデータ型が、明示的特殊化されているものだった場合、コンパイラは明示的特殊化されたものをコンパイルしてコードを生成する。
たとえば、これは要素数nの配列の先頭要素を指すポインタpに対して、全ての要素をxにするということを行うC++の関数テンプレートarray_fillである。

template
inline void array_fill(T
* p, std::size_t n, T x)

これは、特殊化ではない通常のテンプレートの定義である。このような明示的特殊化でないものを一次テンプレートと言う (X3014 14.5.4)。
もしその配列がchar型だった場合、標準Cライブラリmemsetを使うことができ、その方がstd::fill_nより高速化されているとする。そのような場合、次のように明示的特殊化すれば、array_fillにchar型の先頭要素を指すポインタが渡されたときにはmemsetを用いるようにすることができる。

template<>
inline void array_fill(char
* p, std::size_t n, char x)


抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「テンプレートの部分特殊化」の詳細全文を読む




スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.