| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 838 人关注过本帖
标题:模板类中的数组
只看楼主 加入收藏
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
结帖率:79.17%
收藏
 问题点数:0 回复次数:6 
模板类中的数组
看到一个模板如下定义:<程序员求职应聘必读 >p82
template <typename T,int size=10> class Base
{
    T m[size];
public:
    void print_size()
    {
        std::cout<<size<<std::endl;
    }
};

这里的 数组  T m[size];中的长度 size 怎么可以不是常数呢 ??

[[it] 本帖最后由 vfdff 于 2008-10-27 00:35 编辑 [/it]]
搜索更多相关主题的帖子: 数组 长度 模板类 
2008-10-27 00:25
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
模板概念而已...只有实例化时编译器才产生实体代码..
例如: Base<int,30> s;
编译器才会生成int实例的代码,大概这样:
 class Base_int
{
    int m[30];
public:
    void print_size()
    {
        std::cout<<30<<std::endl;
    }
};
收到的鲜花
  • vfdff2008-10-27 12:15 送鲜花  3朵   附言:我很赞同

樱花大战,  有爱.
2008-10-27 09:39
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
同意楼上。。。回答的漂亮的。。。

学习需要安静。。海盗要重新来过。。
2008-10-27 10:39
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
收藏
得分:0 
回复 2# 中学者 的帖子
就是这个 实例化 Base<int,30> s;发生在编译期?

~~~~~~~~~~~~~~~好好学习~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008-10-27 12:55
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
回复 4# vfdff 的帖子
编译器不在编译期检查清楚,,难道要延迟到连接期.....

最后.希望你以后提问先自己思考实践在问....因为我看你的很多问题都给人你没有思考!

樱花大战,  有爱.
2008-10-27 16:25
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
收藏
得分:0 
回复 5# 中学者 的帖子
论坛 本来就是 交流讨论的地方
对于编程的水平参差不齐,这个有什么好质疑的呢?
你总不能希望每个人都能像你这么厉害吧!!

~~~~~~~~~~~~~~~好好学习~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2008-10-27 18:17
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
互相切磋吧。。。其实每个人都有不知道的知识。。互相帮助吧。。。

学习需要安静。。海盗要重新来过。。
2008-10-27 19:18
快速回复:模板类中的数组
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022614 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved