Sự khác biệt giữa các chức năng front()
và begin()
xuất hiện trong nhiều vùng chứa STL là gì?Sự khác nhau giữa trước() và bắt đầu()
Trả lời
begin()
trả về trình lặp có thể được sử dụng để lặp qua bộ sưu tập, trong khi front()
chỉ trả về tham chiếu đến phần tử đầu tiên của bộ sưu tập.
+1 Chỉ để làm cho mọi thứ rõ ràng hơn (hoặc có thể phức tạp): '& c.front() == & * c.begin()' cho bất kỳ vùng chứa nào có ít nhất một phần tử. So sánh địa chỉ * của * các biểu thức được sử dụng để chứng minh rằng nó không phải là các giá trị * * giống nhau, nhưng các * đối tượng * (tức là 'c.front()' đưa ra một tham chiếu đến cùng một đối tượng mà dereferencing bắt đầu iterator '* c.begin()'). –
front()
trả về tham chiếu đến phần tử đầu tiên, begin()
trả về một trình lặp cho nó.
Lưu ý rằng bạn không nên gọi số front
trên vùng chứa trống, nhưng bạn có thể gọi begin
miễn là bạn không coi trọng trình lặp đó là begin
trả về.
'begin()' cũng hoạt động nếu không có phần tử đầu tiên. –
Thành viên front
trả về tham chiếu đến thành viên đầu tiên của danh sách hoặc vectơ. Hàm begin
trả về một trình lặp (giống như một con trỏ) được khởi tạo cho thành viên đầu tiên của danh sách, bản đồ hoặc vectơ.
Từ http://www.cplusplus.com/reference/stl/vector/begin/ (nghĩa đen là kết quả google đầu tiên cho "vector :: bắt đầu"):
Chú ý rằng không giống như thành viên
vector::front
, mà trả về một tham chiếu đến phần tử đầu tiên, hàm này trả về một iterator truy cập ngẫu nhiên.
- 1. Sự khác nhau giữa: trước và :: trước là gì?
- 2. Sự khác nhau giữa dbcontext.Add và dbcontext.AddObject
- 3. Sự khác nhau giữa FacesContext và ExternalContext
- 4. Sự khác nhau giữa StreamReader.Read và StreamReader.ReadBlock
- 5. Sự khác nhau giữa JAVA_HOME và JRE_HOME
- 6. Sự khác nhau giữa NoClassDefFoundError và ClassNotFoundException?
- 7. Sự khác nhau giữa System.Drawing.Point và System.Drawing.PointF
- 8. Sự khác nhau giữa didFinishLaunchingWithOption và viewDidLoad
- 9. Sự khác nhau giữa OTL và SOCI
- 10. Sự khác nhau giữa "./somescript.sh" và ". ./somescript.sh"
- 11. Sự khác nhau giữa Date.parse() và .getTime()
- 12. Sự khác nhau giữa! = Và =! trong Java?
- 13. Sự khác nhau giữa Rscript và Littler
- 14. Sự khác nhau giữa sys và os.sys
- 15. Sự khác nhau giữa ApacheActiveMQ và ApacheActiveMQApollo
- 16. Sự khác nhau giữa IIFE và gọi
- 17. Sự khác nhau giữa jQuery.extend và jQuery.fn.extend?
- 18. Sự khác nhau giữa SpVoice và SpeechSynthesizer
- 19. Sự khác nhau giữa C: và C:/
- 20. Sự khác nhau giữa .Equals và ==
- 21. Sự khác nhau giữa% w và% W
- 22. Sự khác nhau giữa ParameterInfo.DefaultValue và ParameterInfo.RawDefaultValue
- 23. Sự khác nhau giữa MBean và MXBean
- 24. Sự khác nhau giữa ConfigurationManager và ConfigurationSettings
- 25. Sự khác nhau giữa Tkinter và Tkinter
- 26. Sự khác nhau giữa 'SpecialFolder.LocalApplicationData' và 'SpecialFolder.ApplicationData'?
- 27. Sự khác nhau giữa String.getBytes() và IOUtils.toByteArray()?
- 28. Sự khác nhau giữa presentModalViewController và presentViewController?
- 29. Sự khác nhau giữa NSInvocationOperation và NSBlockOperation
- 30. Sự khác nhau giữa TVar và TMVar
'front()' giống hệt '* begin()'. – ildjarn
Tại sao điều này lại bị downvoted: S? Đó là một câu hỏi hợp lệ, ồ. –
Nút downvote cho biết "câu hỏi này không hiển thị bất kỳ nỗ lực nghiên cứu nào" - có vẻ khá phù hợp. – ildjarn