PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
Re: [问题] class判断问题
楼主:
loveflames
(咕啾咕啾魔法阵)
2017-05-12 11:54:09
class implB{
public:
void f();
};
template<T>
class A:{
public:
/*
为方便理解,函数定义在class内
这样有T的定义相依性
*/
A():p(new T){...}
void f(){p->f();}
private:
T * p;
};
class B:public A<implB>{
...
};
类似这样做,少的部分请自己补上
作者:
cozychocolat
(chocolate)
2017-05-12 15:06:00
谢谢您 我会再试试
作者:
hunandy14
(Charlott.HonG)
2017-05-12 22:53:00
请问~这样 implB的fun() 怎么存取 A 的成员 传this吗
作者:
LPH66
(-6.2598534e+18f)
2017-05-12 23:29:00
其实可以不用分写一个 implB 出来直接继承 A<B> 即可, 这个写法叫做 CRTP之所以可以不用的原因是写 template<...> class A 的时候A 还没有真正实体化出来, 要到 B 继承 A<B> 时才会实体化而这时 B 已经知道是什么东西了所以可以用
作者:
hunandy14
(Charlott.HonG)
2017-05-12 23:39:00
这样吗~
http://ideone.com/ocRq3h
楼主:
loveflames
(咕啾咕啾魔法阵)
2017-05-13 00:24:00
原始要求是子类不要有函数
继续阅读
[问题] class判断问题
cozychocolat
[问题] 应该是路径问题!?
MOONY135
[问题] gdb中的watchpoint 使用step没有反应
sirusi
[问题] 避免“变量名称”冲突“class名称”
hn12404988
[问题] 大家怎么增进C++知识?
druid0214
[问题] 看不懂程式码
XtendaceD
[问题] Class变量宣告有 class型态的变量
coal511464
[问题] CUDA 执行结果问题
v00623
[问题] const 修饰词使用
XtendaceD
[问题] 关于 casting (强制转换)
EngRookie
Links
booklink
Contact Us: admin [ a t ] ucptt.com