類模板與函數模板

類模板:    類模板是爲某一些類只有數據類型不同,而將數據類型進行抽象處理的機制. 可由該模板實現不同數據類型的模板類.

定義類模板:      template <class T, int size>   放在類的首部.   在類中可使用這兩個參數.             

                      T爲類型參數 

                      size 爲非類型參數  ,用來說明類模板中屬性.  如:

                       template <class T, int size>

                       class CTest

                       {

                        public:

                              T Fun(T a);

                        private:

    

                       }

 

                    定義類模板中的函數:

                      首先在每個函數前加template<class T,int size>  .

                      其次在類後添加<T,size>    這樣就可在函數中使用模板參數了.   

                      template <class T, int size>

                      T CTest<T,size>::Fun(T  a)

                      {                           

                            return a;

                      }

                     

 

 

模板類:  類模板的實現即爲模板類. 定義一個int型的CTest模板類.

                       CTest<int>   a;                   

 

函數模板: 將功能相同,只有數據類型不同的某類函數進行抽象.

 

 

定義函數模板: 在函數定義前添加 template <class T>

                     如

                          template <class T>   T Add(T a, T b)

                                         {

 

                                            return a+b;

                                         }

 

                             int  a=1,b=2, n=0;

                         

                             n=Add(1,2);

 

                             //n=3;

         

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章