http://stackoverflow.com/questions/3127454/how-do-c-class-members-get-initialized-if-i-dont-do-it-explicitly
On Sun, Sep 28, 2014 at 12:22 PM, Deepak Garg <[email protected]> wrote: > Hi > > In example 1, member z will have a garbage value (i.e. 0 in your case ) > > Thanks > Deepak > On Sep 28, 2014 11:29 AM, "sagar sindwani" <[email protected]> > wrote: > >> I am working on How compilers handle initialization list. I came across a >> case where I am not sure what should be the compiler behaviour. >> >> *Example 1:-* >> >> #include <iostream> >> >> class A >> { >> public: >> int x,y,z; >> }; >> >> int main() >> { >> A a1[2] = >> { >> { 1,2 }, >> { 3,4 } >> }; >> >> std::cout << "a1[0].z is " << a1[0].z << std::endl; >> >> return 0; >> } >> >> In above case a1[0].z is ? g++ shows it as 0 ( zero ). It is exactly 0 or >> garbage value, I am not sure on that. >> >> I tried lot of books and some documents , no where I found what C++ says >> for initialization of class objects. >> >> You can find handling of below case in almost every book. >> >> *Example 2:- * >> >> int arr[6] = {0}; >> >> In Example 2, compilers will auto-fill all members with 0. It is >> mentioned in books. But when it comes to User-defined datatypes nothing is >> mentioned. >> >> >> Please share your thoughts on this. If you find any document related to >> this, please share it as well. >> >> Thanks >> Sagar >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Algorithm Geeks" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
