Tôi đã sử dụng auto
từ khóa mới có sẵn trong tiêu chuẩn C ++ 11 cho các loại khuôn mẫu phức tạp, đó là những gì tôi tin rằng nó được thiết kế cho. Nhưng tôi cũng đang sử dụng nó cho những việc như:
auto foo = std::make_shared<Foo>();
Và hoài nghi hơn cho:
auto foo = bla(); // where bla() return a shared_ptr<Foo>
Tôi chưa thấy nhiều cuộc thảo luận về chủ đề này. Dường như auto
có thể bị lạm dụng, vì một loại thường là một dạng tài liệu và kiểm tra độ tỉnh táo. Nơi nào bạn vẽ đường trong việc sử dụng auto
và các trường hợp sử dụng được đề xuất cho tính năng mới này là gì?
Để làm rõ: Tôi không yêu cầu một ý kiến triết học; Tôi đang yêu cầu mục đích sử dụng từ khóa này của ủy ban tiêu chuẩn, có thể với các nhận xét về cách sử dụng mục đích đó được thực hiện trong thực tế.
Lưu ý bên lề: Câu hỏi này đã được chuyển đến SE.Programmer và sau đó quay lại Stack Overflow. Thảo luận về điều này có thể được tìm thấy trong câu hỏi meta này .
auto
từ khóa, thì bạn sẽ biết nó nên được sử dụng như thế nào . Đó là những gì tôi đang hỏi, với tư cách là người mới sử dụng tính năng này, tôi nên sử dụng nó như thế nào?
var
(nghĩa là, một khi mọi người đã vượt qua ý tưởng rằng đó không phải là kiểu gõ động). Nếu bạn muốn bạn có thể bắt đầu với câu hỏi này và đi qua các câu hỏi liên quan.
auto foo = bla();
"xấu" rõ ràng là một ý kiến, không phải là một thực tế, điều này làm cho câu hỏi này và trả lời một cuộc thảo luận, làm cho nó có liên quan đến Lập trình viên SE, đó chính xác là những gì các phiếu bầu gần chỉ ra. / nhún vai