c++自定义调试级别加类改进版.

#pragma once 
#define 函类名() 取左串其右(宏函名,"::")
//0,代表不用//1,代表大枝
//2,代表中枝//3,代表小枝
 允许调试{//级,与要调试类.
    无序映<,>; m;//只针对类中函数.普通函数
    //应该是注册机制.一个中心.
    <,型名...M>
     注册(){((,简写名<M>(),),...);}
    //将类名改成中文.类名底层为utf8编码.
     置类名(&a){m=a;}
    < I,型名...T>常式  动作(T...o){
         t=.查找(m);(t==.());
        ((t->第二)>=I){打印(o...);}
    }//加个只调试某些类呢?,也可以加个调试级数.
};//调试,必须给出级别.还要有个转发函数.
允许调试 t; gm;
//怪名,如果不是全局名,则会重复定义,可以引起
//编译死机.如何让调试适应(d.表示())这种类型呢
#define 调试(a,...) \
    gm=函类名();t.置类名(gm);\
    t.动作<a>(__VA_ARGS__);

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