关闭

xx

361人阅读 评论(0) 收藏 举报

#include <stdafx.h>
#include <iostream>  
#include <string>
#include <fstream>
#include <vector>

using namespace std;  

template <typename T>  
void ShowArray(T arr[],int n);//template   A  

template <typename T>  
void ShowArray(T * arr[],int n);//template   B  
test();

struct debts  
{  
 char name[50];  
 double amount;  
};  

int main()
{  
 int things[6]={13,31,103,301,130};  
 struct debts mr_E[3]=  
 {  
  {"Ima   Wolfe",2400.0},  
  {"Ura   Foxe   ",1300.0},  
  {"Iby   Stout",1800.0}  
 };  
 double *pd[3];  

 for(int i=0; i<3;i++)  
  pd[i]=&mr_E[i].amount;  

 cout<<"Listing   Mr.E's   counts   of   things:/n";  
 ShowArray(things,6);  
 cout<<"Listing   Mr.E's   debts:/n";  
 ShowArray(pd,3);//uses   template   B,more   specialized  

 string strthings[7] = {"a","b","c","d","e","f","g"};
 ShowArray(strthings,7);

 test();

 system("PAUSE");
 return   0;  
}
void test()
{
  vector<int> vec0;//null 's vector
 
  const int size = 8;
  const int value = 1024;
  //size = 8 's vector each value 0
  vector<int> vec1(size);
  //size = 8 's vector each value 1024
  vector<int> vec2(size,value);
  //size = 4 's vector each value ia
  int ia[4] = {0,1,1,2 };
  vector<int> vec3(ia, ia + 4);
  //vec4 is a copy vec2
  vector<int> vec4(vec2);

  cout << vec1.size();
}

template   <typename   T>  
void   ShowArray(T   arr[],int   n)  
{  
 cout<<"template   A/n";  
 for(int   i=0;i<n;i++)  
 cout<<arr[i];  
 cout<<endl;  
}  

template   <typename   T>  
void   ShowArray(T   *   arr[],int   n)  
{  
 cout<<"template   B/n";  
 for(int   i=0;i<n;i++)  
 cout<<*arr[i]<<'   ';  
 cout<<endl; 
}  
 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:161466次
    • 积分:2369
    • 等级:
    • 排名:第15770名
    • 原创:59篇
    • 转载:64篇
    • 译文:0篇
    • 评论:11条
    文章分类
    最新评论