c++ - decltype as a return type in class member function -


i got error compiling below code.

struct b{     double operator()(){         return 1.0;     } };  struct {     auto func() -> decltype(b())     {         return b();     }      b b; }; 

however, if reorganize a, compiles.

gcc 4.8 said 'b' not declared in scope.

struct {     b b;     auto func() -> decltype(b())     {         return b();     } }; 

so, wrong first??

the definition of class processed 2 passes: first member declarations collected, including function signatures, , bodies of definitions parsed.

the function body therefore has access member declarations, including subsequent ones, function prototype sees preceding declarations.


Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -