一步步来,先简单点.目标:我们要实现一个模板类,例化后,可以通过get_val获取到值,通过get_ptr获取到指针.具体什么意思结合例子来看看吧.例子:
struct A{int data;A(int _data = https://www.huyubaike.com/biancheng/0):data(_data){}};template class heap_node{ public:typedef Tval_type;typedef T* ptr_type;typedef T& ref_type;ptr_type data;ref_type get_val() { return *data; }ptr_type get_ptr() { return data; }heap_node(ptr_type d) :data(d){printf("<T> (T*)\n");}heap_node(ref_type d) :data(&d){printf("<T> (T)\n");} }; int main() {A a(10);printf("ptr=%p\n",&a);heap_node<A> p0(a);printf("ptr=%p val=%d\n", p0.get_ptr(),p0.get_val().data);heap_node<A> p1(&a);printf("ptr=%p val=%d\n", p1.get_ptr(), p1.get_val().data); /*heap_node<A*> p2(a);printf("ptr=%p val=%d\n", p2.get_ptr(), p2.get_val().data);heap_node<A*> p3(&a);printf("ptr=%p val=%d\n", p3.get_ptr(), p3.get_val().data); */char ch = getchar();}
(不要在类里直接保存值类型的数据,可以用指针或者引用都可以)发现heap_node<A
推荐阅读
-
都江堰市2023年小升初入学指南 都江堰市小升初招生网
-
-
-
-
-
-
-
国漫天官赐福让原著粉丝飘了,你认为是尬捧还是真的好看?
-
宁夏理工学院2022年分省分专业招生计划(本科+专科)
-
-
-
-
-
北京天马旅行社有限公司_工商信用信息_经营范围期限状态_法人_地址_注册资本_怎么样
-
-
-
-
王者荣耀背景修改,王者荣耀实名制弄错了怎么修改?,
-
冷冻的面包吃的时候应该怎么处理 冷冻的面包吃的时候应该怎么处理呢
-