c ++;警告“默认启用”是什么?是指编译期间? [英] c++; What does the warning "enabled by default" mean during compile?
问题描述
我的代码编译没有错误,但这是什么意思?
etherate.cpp:432:11:警告:删除数组'unsigned char broadMAC [6]'[默认启用]
从这行开始,正在删除未签名的字符数组;
delete [] broadMAC;
是否可以保留原样,如果没有,我该如何改善? / p>
谢谢。
更新
broadMAC如何声明?
从大约10行开始;
unsigned char broadMAC [6] = {destMAC [0],destMAC [1],destMAC [2],destMAC [3],destMAC [4],destMAC [5]};
destMAC也是一个无符号字符数组,内部存储有值。
我需要将它们复制出来,使用destMAC进行某些操作,然后恢复原始值;因此,我声明了broadMAC并希望在以后将其删除。
G ++允许启用和禁用许多警告(例如 -Wctor-dtor-privacy
, -Woverloaded-virtual
, -W ...
),方法是在命令行上指定它们。某些警告已启用,而无需在命令行上启用,则必须显式请求其他警告。
因此,一些警告为:
默认启用
其中一些是:
默认情况下已禁用
My code compiles without error, but what does this mean?
etherate.cpp:432:11: warning: deleting array ‘unsigned char broadMAC [6]’ [enabled by default]
Its from this line, where I am deleting an unsigned char array;
delete [] broadMAC;
Is it OK to leave this as it is, if not, how could I improve upon this?
Thanks.
UPDATE
How is broadMAC declared?
From about 10 lines previous;
unsigned char broadMAC[6] = {destMAC[0], destMAC[1], destMAC[2], destMAC[3], destMAC[4], destMAC[5]};
destMAC is also an unsigned char array with values stored inside it. I needed to copy them out, do something with destMAC, then restore the original values; so I have declared broadMAC and wish to delete it after.
G++ allows to enable and disable many warnings (e.g. -Wctor-dtor-privacy
, -Woverloaded-virtual
, -W...
) by specifying them on the command line. Some warnings are enabled, without the need to do so on the command line, others must be explicitly requested.
So, some warnings are:
"enabled by default"
and some are:
"disabled by default"
这篇关于c ++;警告“默认启用”是什么?是指编译期间?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!