四个C++函数模板实例
生活随笔
收集整理的這篇文章主要介紹了
四个C++函数模板实例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實例一
#include <string> #include <iostream> using namespace std; template<typename T> void print(const T& var) { cout << var << endl; } int main() { string str("Hello World"); const int num=12345; print(str); print(num); return 0; }
實例二
#include <iostream.h> // 定義函數模板,找出三個值中最小的值,與數據類型無關 template <class T> T min(T ii, T jj, T kk) { T temp; if((ii<jj)&&(ii<kk)){ temp=ii; } else if((jj<ii)&&(jj<kk)){ temp=jj; } else{ temp=kk;} return temp; } int main() { cout<<min("anderson","Washington","Smith")<<endl; return 0; }
實例三
#include <iostream> #include <string>using namespace std;template<class T> void swap(T *x, T *y){//函數的模板,只要能使用等號賦值類型都可以用這個模板互換T temp = *x;*x = *y;*y = temp;}int main() {int i = 9, j = 5;float k = 9.2, l = 5.6;swap(&i, &j);//交換整形swap(&k, &l);//交換浮點型cout<<"i = "<<i<<" , j = "<<j<<endl;cout<<"k = "<<k<<" , l = "<<l<<endl;return 0; }
實例四
使用普通函數;
#include<iostream>using namespace std;int int_add(int a,int b)//定義函數int_add用于int型數據相加 {int c;c=a+b;return c; } double dou_add(double a,double b)//定義函數dou_add用于double型函數相加 {double c;c=a+b;return c; }int main() {cout<<int_add(5,3)<<endl; //調用int_add函數cout<<dou_add(5.35,5.5)<<endl; //調用dou_add函數return 0; }使用函數重載; #include<iostream>using namespace std;int n_add(int a,int b)//定義函數n_add用于int型數據相加 {int c;c=a+b;return c; } double n_add(double a,double b)//定義函數n_add用于double型函數相加 {double c;c=a+b;return c; }int main() {cout<<n_add(5,3)<<endl; //調用n_add函數cout<<n_add(5.35,5.5)<<endl; //調用n_add函數return 0; }
使用函數模板
#include<iostream>using namespace std;template<typename T> T n_add(T a,T b) {T c;c=a+b;return c; } int main() {cout<<n_add(5,3)<<endl;cout<<n_add(5.35,5.5)<<endl;return 0; }
總結
以上是生活随笔為你收集整理的四个C++函数模板实例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: arcgis 卸载和注册表相关总结
- 下一篇: C++ string源码