Clang编译警告:format specifies type ‘long long‘ but the argument has type ‘int64_t‘ (aka ‘long‘) [-Werro

出现现场:

int64_t mNumPacketsReceived;

ALOGV("Line %lld: %.2f %.2f %.2f, slope %.2f",
               mNumPacketsReceived, n1, n2, b, -n1 / n2);

解决方式:

ALOGV("Line %lld: %.2f %.2f %.2f, slope %.2f",
              (long long) mNumPacketsReceived, n1, n2, b, -n1 / n2);```

这个警告是由Clang-Tidy静态分析工具生成的它提示你可能意图调用一个托构造函数,但实际上创建了一个临时对象。要解决这个问题,你可以按照以下步骤进行操作: 1. 确认你的意图:首先,确保你真的想要调用委托构造函数,而不是创建临时对象。如果你确实想要调用委托构造函数,请继续下一步;否则,检查代码逻辑并修复错误。 2. 使用委托构造函数:如果你确定要使用委托构造函数,请确保你在构造函数初始化列表中正确调用了目标构造函数。验证参数传递是否正确,并检查是否遵循了正确的调用顺序。 3. 检查构造函数参数:确认你的构造函数参数是否正确地匹配了目标构造函数的参数。如果参数类型不匹配或缺少必需的参数,将导致临时对象的创建和警告的产生。 4. 确认委托构造函数的语法:确保你正确使用了C++11引入的委托构造函数语法。委托构造函数应该在构造函数的初始化列表中使用冒号(:)进行声明,并调用其他的构造函数。 5. 更新编译器和静态分析工具:如果你仍然遇到问题,尝试更新你的编译器和静态分析工具,以确保你使用的是最新版本。有时,这种警告可能是编译器或工具中已知的问题,可能在后续版本中得到修复。 请注意,具体解决方法可能因代码的上下文而异。如果你能提供相关的代码片段,我可以更具体地帮助你解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值