如何去掉flexelint对引用类型成员初始化为NULL的warning
一下代码使用工具flexelint分析时,会报出413(null pointerd)warning.
typedef union
{
int int_u;
char char_u[4];
}myUnion;
enum
{
null_c = 0;
};
class myClass
{
public:
myClass();
myUnion & union_m_real;
};
myClass::myClass()
:union_m_real(*(myUnion *)null_c) //此处报warning
{}
int main(int argc, char* argv[])
{
myClass myClass_obj;
return 0;
}
请教一种可以去掉warning的修改代码方法。
要求:不能加全局变量,不能修改构造函数的声明,不能修改flexelint的规则。谢谢!
[解决办法]
编译都通不过!
[解决办法]
编译都通不过,还用flexelint?
[解决办法]
编译通不过
[解决办法]
enum
{
null_c = 0 //不要分号 ...
};
[解决办法]
。。。。用法有問題。。。
[解决办法]
枚举元素使用 , 逗号分割,
末尾不需要分号,
仅在大括号外使用分号就可以了。
[解决办法]
强行制造空引用,极危险的错误行为,没啥好讨论的。
[解决办法]
- v-
[解决办法]
不理解楼主的想法。