Nơi tốt để tìm hiểu về các tính năng C++ 0x mới là gì? Tôi hiểu rằng họ có thể chưa hoàn thành xong nhưng sẽ rất tuyệt khi bắt đầu. Ngoài ra, những gì các trình biên dịch hiện đang hỗ trợ chúng?Tìm hiểu về các tính năng của C++ 0x
Trả lời
Cách dễ dàng và thú vị để tìm hiểu về nó là xem C++0x Overview Google Techtalk. Một nguồn tốt khác là của Bjarne Stroutstrup C++0x FAQ, bao gồm một phần lớn các tính năng mới.
Không phải là một trùng lặp nhưng bạn có thể nhận được một số câu trả lời here Có cả các liên kết đến các dự thảo và một danh sách các trình biên dịch được thực hiện C++ [0 | 1] x tính năng
Bạn chắc chắn nên biết về nhóm làm việc chính thức trang web cho ISO/IEC JTC1/SC22/WG21. Điều này có thông tin ủy ban, vì vậy nó chứa các tài liệu chính thức đang được phát triển. Tuy nhiên, nó không nhất thiết phải là nơi tốt nhất để tìm hiểu về các ý tưởng nền đằng sau những ý tưởng gợi ý khác nhau cho C++ 0x.
Một địa điểm khác để xem là nhóm tin tức comp.std.c++; điều này thường có các cuộc thảo luận bí truyền về sự tàn phá các tính năng có thể có.
Điều này không thực sự về các tính năng ngôn ngữ nhưng bạn có thể muốn xem TR1. Đó là một đặc điểm kỹ thuật của các thư viện mà hầu hết các likley sẽ biến nó thành C++ 0x.
Có triển khai thực tế cho nó để bạn có thể chơi với nó ngay bây giờ (ví dụ: VC++ implementation của Microsoft).
Đối với VC++ 2010, đây là danh sách những thứ sẽ có ở đó.
Ngôn ngữ (một số trong số này là ở VC2008 đã như mở rộng ngôn ngữ):
- lambdas
static_assert
auto
vàdecltype
tài liệu tham khảo- rvalue (
T&&
) nullptr
extern template
(lưu ý: khôngexport
)long long
- không gian cần thiết giữa bế mạc
>
trong các mẫu lồng nhau (ví dụvector<vector<int>>
là hợp pháp)
Libraries:
<stdint.h>
/<cstdint>
và tất cả các typedefs trong (cuối cùng)std::unique_ptr
,std::shared_ptr
vàstd::weak_ptr
std::forward_list
std::tuple
và những thứ liên quan! (ví dụ:tie
,get
...)<system_error>
<type_index>
KHÔNG là gì đó:
- danh sách initializer (tò mò đủ, tiêu đề
<initializer_list>
là có và có chứa các loại tương ứng, nhưng có vẻ là không có hỗ trợ ngôn ngữ cho nó trong bản beta 2) - Các mẫu có thể biến đổi
constexpr
- phạm vi dựa trên
for
(mặc dù ngôn ngữ mở rộngfor each
, mà chủ yếu là giống nhau, vẫn còn) - thống nhất khởi cú pháp
{}
- chức năng thay thế cú pháp (mà mimicks lambdas)
- đoàn constructor
- cùng trình khởi tạo trường thành viên trực tuyến
[[override]]
(nhưngoverride
vẫn là tiện ích mở rộng ngôn ngữ)=default
và=delete
về thành viênenum class
using
cho loại bí danh, và mẫuusing
char16_t
vàchar32_t
, và xâu tương ứng- xâu liệu và người dùng định nghĩa
sizeof
trên dụ các trường không có đối tượng ví dụstd::thread
và bạn bè
Một liên kết đến nguồn sẽ là tuyệt vời! – csl
http://msdn.microsoft.com/en-us/library/dd465215(VS.100).aspx bao gồm các tính năng ngôn ngữ. Ngoài ra còn có một loạt các bài đăng trên blog, mặc dù chúng hơi lỗi thời ngay bây giờ (ví dụ: họ không yêu cầu hỗ trợ 'nullptr', ngay cả khi nó hiện có): http://blogs.msdn.com/vcblog/archive/2008/10 /28/lambdas-auto-and-static-assert-c-0x-features-in-vc10-part-1.aspx http://blogs.msdn.com/vcblog/archive/2009/02/03/rvalue- reference-c-0x-features-in-vc10-part-2.aspx http://blogs.msdn.com/vcblog/archive/2009/04/22/decltype-c-0x-features-in-vc10-part -3.aspx –
Đối với thư viện, tôi không thể tìm thấy bất kỳ tài liệu xác định nào đề cập đến điều này. Tôi đã biên soạn danh sách trên bằng cách xem xét những gì được cung cấp trong bản cài đặt bản beta 2 VS2010 của tôi. Cũng lưu ý rằng danh sách ở trên không bao gồm các tính năng thư viện đã có trong TR1, và đơn giản được chuyển từ 'std :: tr1 ::' sang 'std ::' cho C++ 0x (VC2010 hỗ trợ các tính năng như vậy trong cả hai không gian tên). –
Để được hỗ trợ về trình biên dịch, bạn có thể xem tại đây: C++0xCompilerSupport.
Trình biên dịch:
GIẤY (S)
HP acc
EDG eccp
gcc
Intel C++
MSVC
IBM XLC++
Sun C++
C++ Builder 2009/10
- 1. Đang cố gắng tìm hiểu về các tính năng không đồng bộ mới trong C#
- 2. Tắt tính năng C++ 0x trong VC 2010?
- 3. Tìm hiểu về Traceview
- 4. Trình biên dịch C++ hỗ trợ các tính năng C++ 0x?
- 5. Tôi cần biết gì về C++ 0x?
- 6. Tìm hiểu về goroutines
- 7. Tính linh hoạt của mẫu bí danh trong C++ 0x
- 8. Tìm tính năng của tính năng trong lisp phổ biến
- 9. Xóa chức năng ảo trong C++ 0x
- 10. Tôi có thể tìm hiểu thêm về chức năng dịch thuật của PyPy ở đâu?
- 11. Tìm hiểu về Silverlight Dispatcher
- 12. Tìm hiểu về các chủ đề daemon Python
- 13. Tìm hiểu về tham chiếu assembly csproj
- 14. Chức năng Unicode mới nào có trong C++ 0x?
- 15. Tìm hiểu về độ phân giải của iPhone
- 16. Tìm hiểu các chức năng nào được inline
- 17. Tìm hiểu các vấn đề về dấu phẩy động
- 18. Ví dụ về danh sách khởi tạo C++ 0x
- 19. Tìm hiểu về nội bộ của Mercurial, Bazaar, v.v ...?
- 20. Tìm hiểu về phong cách lập trình Mozart của Dijkstra
- 21. Tìm hiểu về Java bytecode và JVM
- 22. Tính toán các tính năng của HOG
- 23. C++ 0x Lambda overhead
- 24. scikit tìm hiểu: số lượng các tính năng tốt nhất (k) không được chọn
- 25. Tìm hiểu về thiết lập/getockopt SO_SNDBUF
- 26. Tìm hiểu về các thế hệ còn sống Số liệu
- 27. chức năng không đồng bộ gọi C++ 0x
- 28. Tìm hiểu các khái niệm cơ bản về UIScrollView
- 29. Tìm hiểu về Linux/proc/id/maps
- 30. Tìm hiểu về các thư viện trong OCaml
Sao chép một phần: http://stackoverflow.com/questions/200237/where-can-i-learn-mor e-about-c0x. Nó không nói về sự hỗ trợ của trình biên dịch. – Naveen