学习AA大神c++设计新思维笔记:02工具

工具

局部类没啥用,静断,偏特化,都很普通了.
整2型可用于,分发,这样不同情况,用不同函数,因为是不同类型,所以用不同函数.如整2型<是多态>.现在可用如 常式来代替.多方法,双分派.型2型整2型一样,用于函数分发.分开.
选择<真/假,T,U>,真则为T,假为U.可以选择<是多态,T*,T>.编译期判断可转换,可继承.现在可在类型特征里面,都有.如果某个类有接口,则不用动转.
型长(式)可直接返回大小,不用运行时,可感知重载,实例化,转换规则.型长可推导表达式类型,很强大.c++11等可以(推导(...)),类型无所谓,关键是大小不一样.型长不会求值.

元<类 T,类 U>类 转换{
    用 小=符;
    类 大{符 无[2];};
    静 小 测试(U);//接收U,传回小,
    静 大 测试(...);//函数最后的,最差了.任何其他对象
    静 T 造();//如果调用了接受U的函数,则可转换,
公:
    枚{存在=型长(测试(造()))==型长(小)};
//不同返回类型,用型长来区别.直接用T(),可能构造为私.
    枚{双向存在=存在&&转换<U,T>::存在};
    枚{相同=假};//偏特化中{相同=1};

};

显式构造函数不能用来转换.使用:转换<双精,整>::存在.借助他们判定是继承/是的基.
类型信息包装typeid.还有空型.都有了.有语法,无语义处.
特征,可根据编译期作判断
传值,可根据情况优化.如按引用/按值.当时无法判定是枚举.退化型.还有按位拷贝.

类型<列表>

编译期,无可变的东西.与lisp很像.都是不变的
部分模板偏特化,要小心.有的元<...>构 构名<...>,照样每个模板参数都有,要注意人家的定义方式.
型2型远看没用.就像那个I!...,主要是直接用T会构造T对象,而用型2型就是个空型.减小开销.
类型信息.无效类型空类型

类 无效类型;
构 空类型{};

类型特征,c++最新里面都有了.
可以优化传参方式,如小颗粒用值,大按引用.去cv,c++现在叫退化型<>,POD结构,都可以按位复制,即使是递归的POD,可以根据POD,使用按位复制

posted @   zjh6  阅读(16)  评论(0编辑  收藏  举报  
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示