搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 类模板的定义
标题:
类模板的定义
只看楼主
反脑控2016
等 级:
业余侠客
威 望:
2
帖 子:108
专家分:212
注 册:2016-9-2
结帖率:
100%
楼主
问题点数:0 回复次数:4
类模板的定义
template<class T>
struct node
{
T a;
struct node*p;
struct node<T>*r;
};
我想问:
p与r的定义完全一样吗?
2016-09-02 17:46
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
2
楼
得分:0
你可以用typeid在运行时比较
还可以用p=r在编译时看它报不报错
2016-09-02 22:48
反脑控2016
等 级:
业余侠客
威 望:
2
帖 子:108
专家分:212
注 册:2016-9-2
第
3
楼
得分:0
感谢版主的提醒,通过下面的例子,得出是等效的:
#include<iostream>
using namespace std;
template <class T>
struct node
{
int data;
node*p;
node<T>*r;
};
void main()
{
node<int> one;
cout<<typeid(one.p).name()<<endl;
cout<<typeid(one.r).name()<<endl;
node<double>two;
cout<<typeid(two.p).name()<<endl;
cout<<typeid(two.r).name()<<endl;
}
我学编程,总爱用自己的语言将所学的东西描述下来,渐渐的,一篇篇的文章,看起来像一个个杰作。
2016-09-03 03:37
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
4
楼
得分:0
回复 3楼 反脑控2016
不能比较名字
因为标准对名字没有任何规定,甚至所有类型叫同一个名字都是符合标准的
2016-09-03 10:53
反脑控2016
等 级:
业余侠客
威 望:
2
帖 子:108
专家分:212
注 册:2016-9-2
第
5
楼
得分:0
多谢。我看不懂原版的MSDN,只能看看帖子,编编小程序测试测试而已,不知道标准。看样子我是遇见了大才,以后请多多赐教。
我学编程,总爱用自己的语言将所学的东西描述下来,渐渐的,一篇篇的文章,看起来像一个个杰作。
2016-09-03 11:27
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-468421-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.978315 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved