6行函数扩展为14行的类是必要的
看,这样代码:
元<型名 F,型名 G>
空 并坑2(F&&f,G&&g,坑&们,整 总){
整 j=0,m;
对(j;j<们.左;j++)f(j);m=们.右;
g(j,m);j=m;对(j;j<总;j++)f(j);
}//两边为f,中间为g,一个坑
上面代码,最重要问题是F,G
,只要是两个以上外部
函数,就可以改造成类
了.因为更好看,更直接,其中f,g
最好重新命个名
,就更易理解了.
元<类 T>构 单坑{
T 啊;整 总;
空 坑外(整 j,整 k){对(;j<k;j++)外项(j);}
空 动作(){
整 m=坑.左,n=坑.右;
坑外(0,m);坑内(m,n);坑外(n,总);
}//坑内有两种表示方法而已.
保护:
虚 空 外项(整 j){}
虚 空 坑内(整 i,整 j){}
公:
单坑(T&a,整 b):们(a),总(b){}
空 并(){动作();}//这才是接口.
};
改造成上面这个样儿,虽然多了很多行
.但更易理解了.我只需要实现外项/坑内
,然后就可以调用并()
了.凡是多个模板F
时,就搞成类
,这样更易理解.而且也不容易
出错.λ
形式,见多了,也不爽.
函数和类
其实是一样的玩意儿
.只是类
就是个大函数
,里面有许多小函数
要实现.
类就是大函数
,如果类太小了,就用函数(自由函数)
.尽量少用λ
.自由函数
最多一个λ
.只要多了,就搞成类,类里面的虚函数
,你想要多少就要多少.也方便.
总之,类就是个大函数
.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现