网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
12月23日
漏签
0
天
c++吧
关注:
589,960
贴子:
2,105,147
看贴
图片
吧主推荐
游戏
1
2
3
4
下一页
尾页
46
回复贴,共
4
页
,跳到
页
确定
<<返回c++吧
>0< 加载中...
c++精华就是成员函数的指针
只看楼主
收藏
回复
lizelglglg
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
class a
{
public:
int x,y;
a(int pa,int pb):x(pa),y(pb){}
int add(){return x+y;}
void set(int (a::*pt)()){p = pt;}
int (a::*p)();
};
void main()
{
a aa(5,2);
aa.set(&a::add);
cout<<(aa.*aa.p)();
}
杰物
<
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
C++精华是模板
C精华是指针
lizelglglg
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
如果行的话,请你给一小段代码,因为我正是不明白模板的精华,我也很想知道模板哪里好。
杰物
<
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
其实我也不是很明白哈……
不过看过一些Template Meta Programming的代码,真佩服那些人
lizelglglg
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我现在正是程序结构上出了点问题,但是发现如果结构设计得不好会出现很多莫名其妙的错误,我很希望找到一点方法,既然提到了模板,我也得去参考参考,不过如果有比较典型的希望能发点过来
杰物
<
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
template <int N>
struct Factorial
{
enum { value = N * Factorial<N - 1>::value };
};
template <>
struct Factorial<0>
{
enum { value = 1 };
};
// Factorial<4>::value == 24
// Factorial<0>::value == 1
void foo()
{
int x = Factorial<4>::value; // == 24
int y = Factorial<0>::value; // == 1
}
rSkip
|
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
回复:7楼
这要是写了个<1000>代码不久会展开n多?不过确实很NX啊
杰物
<
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
回复:8楼
话说Gcc最大展开深度可以达到几千……
codecold
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
看不懂那个代码(我说杰物)
幻の上帝
->*
15
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
对象指针是精华,成员指针是鸡肋。
幻の上帝
->*
15
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
回复:4楼
试试STL用非模板形式实现一下...
模板元编程比较有技巧性,用得不多,一般模板的应用还是侧重于辅助类的组合设计。
7L的是基本的模板元编程。类似的实际应用主要是类型操作(这里现在看来只能用模板),可以参考Loki::Typelist。
lizelglglg
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
确实,模板侧重于辅助,结构设计还是指针与多态
幻の上帝
->*
15
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
回复:13楼
这种语言特性不可能在C++上面实现。
或者说,实现了它就不是C++了。
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示