C++ 11 böyle bir yapıya sahip:C++ 11 Uygun Yapı Başlatma
struct von
{
std::string Name;
unsigned int ID;
std::vector<std::string> Checks;
};
böyle başlatıldı olmalı:
von v = {"",0,{}};
Ya da böyle:
von v = {};
Her iki yol da çalışıyor gibi görünüyor, ancak derleyici ikinci örnekte -Wmissing alan başlatıcıları hakkında uyarıyor.
Düzenleme: İşte derleyici seçeneklerim: g ++ main.cpp -ansi -Wall -Wextra -WeffC++ -std = C++ 0x. Ben g ++ (Debian 4.6.2-12) 4.6.2
Örneğinizde başlatıcı listesi yok, yalnızca liste başlatılıyor. En iyi yol von v {}; 'olabilir. –
von v {}; Ayrıca üyeler için eksik başlatıcılar şikayet ediyor. -Wmissing alan başlatıcısı uyarısı. – 01100110
Hm, haklısınız. Otomatik bir değişkeni değerleyemediğin bir utanç… 'v v {{}, 0, {}};' 'sonraki en iyi şey. –