Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > C/C++ > c++ STL 第0章习题
【标  题】:c++ STL 第0章习题
【关键字】:c++,STL
【来  源】:http://blog.csdn.net/sophia_sy/archive/2007/01/13/1482135.aspx

c++ STL 第0章习题

Your Ad Here
// 0.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
template<class T> inline T sum_all(T* first, T* last)
{
 T sum;
 for(sum = 0; first != last; ++first)
 {
  sum += *first;
 }
 return (sum);
}
template<int> int sum_all(int* first, int* last);
//template<float> float sum_all(float* first, float* last);
// error C2993: 'float' : illegal type for non-type template
parameter '__formal'
template<char> char sum_all(char* first, char* last);
//template<void> void sum_all(void* first, void* last);
// 'void' : illegal type for non-type template parameter '__formal'

template<void*> void* sum_all(void** first, void** last);
template<int*> int* sum_all(int** first, int** last);
template<float*> float* sum_all(float** first, float** last);
template<char*> char* sum_all(char** first, char** last);
int _tmain(int argc, _TCHAR* argv[])
{
 //test for int type
/* int sum = 0;
 int num[5];
 int *p = &num[0];
 int *q = &num[4];
 for(int i = 0; i < 5; i++)
 {
  num[i] = i;
 }
 sum = sum_all(p, q);
 cout<<"sum "<<sum<<endl;
*/
 //test for float type
 float sum = 0;
 float num[5];
 float *p = &num[0];
 float *q = &num[4];
 for(int i = 0; i < 5; i++)
 {
  num[i] = (float)i;
 }
 sum = sum_all(p, q);
 cout<<"sum "<<sum<<endl;
 return 0;
}
//sum_all(&x, &x)的结果是什么,通过这种方式得到的x的值是否是一种很好的做法?
//float、void类型特化模板时为什么会出现问题,
//测试代码改如何去写,才是比较好的写法

 
Command 模式:【上一篇】
优化C语言代码常用的几招:【下一篇】
【相关文章】
  • stl 使用例子
  • C++函数内的批量处理
  • C++主题年技巧积累#1——UltraEdit的代码美化
  • 欢迎喜欢vc++和SQL SERVER数据库编程的朋友和我交流!
  • 給c++primer中一个简单例程的注释
  • C++老手也要注意的几个"小"问题
  • 用Visual C++制作微秒级精度定时器 (Vb也适用)
  • Visual C++ Error MessagesThis
  • 用VC++实现软件的版本在线升级
  • Visual C++设计UDP协议通讯示例
  • 【随机文章】
  • CB非可视组件的消息处理技巧
  • 你的第一个CEGUI程序
  • chmod详细
  • 判断对象所属的类
  • 树型结构列出指定目录里所有文件的PHP类
  • java连接oracle,取io文件内容,子串替换
  • (转贴)ffmpeg的使用
  • AJAX简述
  • Linux 无线网络技术
  • rsync服务器的快速搭建和使用
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.