2016-12-23 16 views
10

Tôi muốn sử dụng các tính năng C++ 17.Cách bật tính năng biên dịch C++ 17 trong Visual Studio?

Làm cách nào tôi có thể chuyển biên dịch từ C++ 14 sang C++ 17 trong Microsoft Visual Studio?

Hoặc không có sẵn trong các phiên bản phát hành của VS?

+2

Tính năng C++ 17 nào? Phiên bản Visual Studio nào? Nếu bạn hỏi về C++ 17 tại sao bạn gắn thẻ câu hỏi của bạn 'C++ 11' và' C++ 14'? – ildjarn

+0

C++ 17 không có sẵn và tôi nghĩ rằng những người quan tâm đến các phiên bản cụ thể của C++ biết cách chuyển đổi nó tốt hơn. Ví dụ tôi muốn std :: vector.emplace_back() để trả lại tham chiếu đến phần tử mới được tạo. Tôi biết rằng dòng +1, và tôi có được tham khảo đó, Nhưng tôi vẫn muốn biết câu trả lời cho câu hỏi của tôi. VS Cộng đồng 2015 (14.0.25431.01 Cập nhật 3) – Tudvari

+0

Có thể bạn nên kiểm tra tại đây: https://blogs.msdn.microsoft.com/visualstudio/ –

Trả lời

11

Có bây giờ là một danh sách thả xuống (Ít nhất kể từ VS 2017/03/05), nơi bạn thể chọn cụ thể C++ 17.Các tùy chọn sẵn có (thuộc dự án/tài sản/C++/ngôn ngữ)

  • ISO C++ 14 Standard (/ std: C++ 14)
  • ISO C++ 17 Standard (/ std: c + +17)
  • Tiêu chuẩn dự thảo mới nhất (/ std: C++ mới nhất)
15

Thêm vào tùy chọn bổ sung trong Cài đặt dự án: /std:c++latest để cho phép tính năng mới nhất - hiện C++ 17 như của V S2017, VS2015 Cập nhật 3.

https://blogs.msdn.microsoft.com/vcblog/2016/06/07/standards-version-switches-in-the-compiler/

/permissive- sẽ vô hiệu hóa C mở rộng phi tiêu chuẩn ++ và sẽ cho phép phù hợp tiêu chuẩn trong VS2017.

https://blogs.msdn.microsoft.com/vcblog/2016/11/16/permissive-switch/

EDIT (Tháng 11 năm 2017): tính năng VS2017 mới nhất được ghi nhận ở đây: https://docs.microsoft.com/en-gb/cpp/build/reference/std-specify-language-standard-version

VS2017 hỗ trợ bây giờ: /std:[c++14|c++17|c++latest] và những lá cờ có thể được thiết lập thông qua các trang tài sản của dự án:

Để đặt tùy chọn trình biên dịch này trong Visual Studio phát triển môi trường

  1. Mở hộp thoại Trang thuộc tính của dự án. Để biết chi tiết, xem Làm việc với Thuộc tính dự án.
  2. Chọn Thuộc tính cấu hình, C/C++, Ngôn ngữ.
  3. Trong tiêu chuẩn ngôn ngữ C++, chọn tiêu chuẩn ngôn ngữ để hỗ trợ từ điều khiển thả xuống, sau đó chọn OK hoặc Áp dụng để lưu thay đổi của bạn.
Các vấn đề liên quan