![]() |
1
3
原始情况1不分配内存,两种情况都不清除
要解决C中的情况1,最好的解决方案是使用
然后当你不再需要
(请注意,由于结构中填充了零,因此不再需要手动设置小时、分钟、秒)
在C++中,您可以使用
中的空括号
首选“案例2”变体,因为它分配了
情况1有些糟糕,因为为小数据结构分配内存(小通常意味着小于1KB左右,但这取决于实际运行环境,64KB RAM的手表可能比16GB RAM的台式机有更严格的要求,而手机可能介于两者之间,这在一定程度上取决于它是什么类型的手机)。避免“小”内存分配至少有两个原因:
对于情况2,您可以使用:
(同样,您不需要为小时、分钟和秒设置零值)
在C++中,省略是正确的
由于最初的问题同时指定了C和C++,我试图解释 |