Câu hỏi được gắn thẻ «c++11»

Sử dụng thẻ này cho mã phải biên dịch thành C ++ 11 (không sử dụng bất kỳ tính năng nào được giới thiệu trong C ++ 14 trở lên).




5
Tôi có thể liệt kê-khởi tạo một vectơ kiểu chỉ di chuyển không?
Nếu tôi chuyển đoạn mã sau qua ảnh chụp nhanh GCC 4.7 của mình, nó sẽ cố gắng sao chép các unique_ptrs vào vectơ. #include <vector> #include <memory> int main() { using move_only = std::unique_ptr<int>; std::vector<move_only> v { move_only(), move_only(), move_only() }; } Rõ ràng điều đó không thể hoạt …








6
C ++ kết thúc được gọi mà không có ngoại lệ hoạt động
Tôi đang gặp lỗi C ++ với luồng: terminate called without an active exception Aborted Đây là mã: #include <queue> #include <thread> #include <mutex> #include <condition_variable> template<typename TYPE> class blocking_stream { public: blocking_stream(size_t max_buffer_size_) : max_buffer_size(max_buffer_size_) { } //PUSH data into the buffer blocking_stream &operator<<(TYPE &other) { std::unique_lock<std::mutex> mtx_lock(mtx); while(buffer.size()>=max_buffer_size) …

15
C ++ 11 có thuộc tính kiểu C # không?
Trong C #, có một đường cú pháp tuyệt vời cho các trường với getter và setter. Hơn nữa, tôi thích các thuộc tính được triển khai tự động cho phép tôi viết public Foo foo { get; private set; } Trong C ++ tôi phải viết private: Foo foo; …
93 c#  c++  class  c++11 

2
[=] Có nghĩa là gì trong C ++?
Tôi muốn biết những gì [=]không? Đây là một ví dụ ngắn template <typename T> std::function<T (T)> makeConverter(T factor, T offset) { return [=] (T input) -> T { return (offset + input) * factor; }; } auto milesToKm = makeConverter(1.60936, 0.0); Làm thế nào mã sẽ hoạt động với …
93 c++  c++11  lambda 

1
Giải quyết tình trạng quá tải không rõ ràng trên con trỏ hàm và hàm std :: cho lambda bằng cách sử dụng +
Trong đoạn mã sau, lệnh gọi đầu tiên fookhông rõ ràng và do đó không biên dịch được. Thứ hai, với phần được thêm vào +trước lambda, giải quyết tình trạng quá tải con trỏ hàm. #include <functional> void foo(std::function<void()> f) { f(); } void foo(void (*f)()) { f(); } …

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.