php打印出函数的内容吗,PHP开发:记录函数的所有参数,并打印出来?有没有通用的方式?...

这个问题用编程的方法解决起来比较困难,可以采用(编程+代码后处理脚本)来提供一个稍微简单点的实现.举例对Cpp的函数调用日志来进行处理.

首先,我们要确保参数都可以用统一的方法来处理,譬如cpp里全部使用<

typedef struct tag_xxx

{

double a;

int b;

char c;

friend std::ostream& operator<

{

os<

return os;

}

}xxx;

这样对于任何参数定义(无论是double等基础类型还是结构体,class)都可以用<

之后对于任何参数的调用,可以用以下方法打印信息

int test(double a,int b,char c,xxx obj)

{

cout<<__func__>"<

/**

函数体

**/

return 0;

}

上面的输出有个问题就是如何实现自动化,可以采用Perl脚本等方式:

假设有函数,在函数体需要插入log的地方置flag:

int test(double a,int b,char c,xxx obj)

{

//InsertLog

}

对于脚本来讲,可以判断到test函数,然后使用正则表达式等得到参数列表"a,b,c,obj".

然后脚本查找到函数体内的//Insertlog标志,根据得到的参数列表生成字符串

cout<<_func_>"<

插入到代码中.

当然,对于class及struct等聚合类也可以采用置flag然后用脚本生成"<

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值