В течение многих лет я инициализирую свои struct stat
так:Как правильно инициализировать 'struct stat' с помощью C++ 11?
#include <sys/stat.h>
struct stat foo = {0};
В частности, что {0}
набор всех полей к нулю, что эквивалентно memset (&foo, NULL, sizeof foo);
. Теперь с C++ 11, это начал давать предупреждение:
foo.cpp:2:19: warning: missing field 'st_mode' initializer [-Wmissing-field-initializers]
struct stat s = {0};
^
Это из-за новый инициализатор синтаксиса C++ 11, а предупреждение означает, что я не инициализацию всех членов. Каков предпочтительный способ создания и инициализации struct stat
в C++ 11?
_ "Это из-за нового синтаксиса инициализатора C++ 11" _ Это? –