Używam nowego auto
słowa kluczowego dostępnego w standardzie C ++ 11 do skomplikowanych typów szablonów, do czego, moim zdaniem, został zaprojektowany. Ale używam go również do takich rzeczy jak:
auto foo = std::make_shared<Foo>();
I bardziej sceptycznie dla:
auto foo = bla(); // where bla() return a shared_ptr<Foo>
Nie widziałem wiele dyskusji na ten temat. Wydaje się, że auto
można to nadużyć, ponieważ typ jest często formą dokumentacji i kontroli poczytalności. Gdzie rysujesz linię w użyciu auto
i jakie są zalecane przypadki użycia tej nowej funkcji?
Aby wyjaśnić: nie proszę o filozoficzną opinię; Proszę o zamierzone użycie tego słowa kluczowego przez standardowy komitet, ewentualnie z komentarzami na temat tego, jak zamierzone użycie jest realizowane w praktyce.
Uwaga dodatkowa: To pytanie zostało przeniesione do SE.Programmers, a następnie z powrotem do Stack Overflow. Dyskusję na ten temat można znaleźć w tym meta pytaniu .
auto
słowa kluczowego, to wiesz, jak to miało być użyte. O to pytam, jako że ktoś, kto jest nowicjuszem w tej funkcji, jak mam jej używać?
var
(to znaczy, gdy ludzie wpadli na pomysł, że to wcale nie było dynamiczne pisanie). Jeśli chcesz, możesz zacząć od tego pytania i przejść do powiązanych pytań.
auto foo = bla();
„złym” jest wyraźnie opinią, a nie faktem, co powoduje, że pytanie to jest odpowiedzią na dyskusję, co czyni go istotnym dla Programistów SE, co dokładnie wskazują na to bliskie głosy. / wzruszenie ramionami