首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于STL traits的有关问题

2012-02-09 
关于STL traits的问题!有如下程序,主要是为了测试iterator_traits的偏特化性质,但有一些问题:#includecst

关于STL traits的问题!
有如下程序,主要是为了测试iterator_traits的偏特化性质,但有一些问题:

#include   <cstdlib>
#include   <iostream>
using   namespace   std;
/*
template <class   T>
class   MyClass
{
public:
              typedef   T   value_type;

              MyClass(){};
              ~MyClass(){};
              int   m_data;          
};
*/
template <class   T>
struct   iterator_traitss
{
          typedef   typename   T::value_type   value_type;

};

template <class   T>
struct   iterator_traitss <T*>
{
        typedef   T   value_type;
};


template <class   T>
typename   iterator_traitss <T> ::value_type  
func(T   ite)
{
              typename   iterator_traitss <T> ::value_type   i;
                return   i;
}
int   main(int   argc,   char   *argv[])
{


        int   *p   =   new   int(9);
        func(p);   //没问题,因为有template <class   T> struct   iterator_traitss <T*>
        func(*p);   //有问题,无法执行!!!!!!   帮忙看看!!!
        system( "PAUSE ");
        return   EXIT_SUCCESS;
}

[解决办法]
应该是重载func,提供func(int)版本。
[解决办法]
嗯,那样更好。:P
一切麻烦烟消云散,嘿嘿。

热点排行