template 構造体の不思議な定義法
Posted: 2007年10月26日(金) 09:14
はじめまして
template技術を勉強しようとしましたが、早くも怪奇例文(構造体定義)に遭遇しました。
例1:
template <bool flag, typename T, typename U>
struct Select
{
typedef T Result;
};
この定義の中に"bool flag" と"typename U"が何のために存在するのでしょうか。
例2:
template <typename T, typename U>
struct Select<false, T, U>
{
t ypedef U Result;
};
この定義の中に"<false, T, U>" が何のために存在するのでしょうか。
基本的な問題ですいませんが
宜しくお願いします
template技術を勉強しようとしましたが、早くも怪奇例文(構造体定義)に遭遇しました。
例1:
template <bool flag, typename T, typename U>
struct Select
{
typedef T Result;
};
この定義の中に"bool flag" と"typename U"が何のために存在するのでしょうか。
例2:
template <typename T, typename U>
struct Select<false, T, U>
{
t ypedef U Result;
};
この定義の中に"<false, T, U>" が何のために存在するのでしょうか。
基本的な問題ですいませんが
宜しくお願いします