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

Thư viện mẫu tiêu chuẩn, hay STL, là một thư viện C ++ gồm các thùng chứa chung, các trình lặp, thuật toán và các đối tượng hàm. Khi C ++ được chuẩn hóa, các phần lớn của STL đã được đưa vào Thư viện chuẩn và các phần này trong Thư viện chuẩn đôi khi cũng được gọi nhầm là "STL".


6
Làm cách nào để chỉ định một con trỏ tới hàm quá tải?
Tôi muốn chuyển một hàm quá tải cho std::for_each()thuật toán. Ví dụ, class A { void f(char c); void f(int i); void scan(const std::string& s) { std::for_each(s.begin(), s.end(), f); } }; Tôi mong muốn trình biên dịch giải quyết f()theo kiểu lặp. Rõ ràng, nó (GCC 4.1.2) không làm điều …
137 c++  stl 

5
Toán tử kép C ++? (&&)
Tôi đang đọc mã nguồn STL và tôi không biết &&nhà điều hành địa chỉ nào phải làm. Đây là một ví dụ mã từ stl_vector.h: vector& operator=(vector&& __x) // <-- Note double ampersands here { // NB: DR 675. this->clear(); this->swap(__x); return *this; } "Địa chỉ địa chỉ" có …



2
Làm cách nào để đặt kích thước ban đầu của std :: vector?
Tôi có một vector<CustomClass*>và tôi đặt rất nhiều vật phẩm vào vector và tôi cần truy cập nhanh, vì vậy tôi không sử dụng danh sách. Làm cách nào để đặt kích thước ban đầu của vectơ (ví dụ là 20 000 vị trí, để tránh sao chép khi tôi …
130 c++  stl 

7
Tại sao std :: queue :: pop không trả về giá trị.?
Tôi đã xem qua trang này nhưng tôi không thể lấy được lý do tương tự. Ở đó nó được đề cập rằng "hợp lý hơn nếu nó không trả về giá trị nào và yêu cầu khách hàng sử dụng front () để kiểm tra giá trị ở đầu …
123 c++  stl 




13
remove_if tương đương cho std :: map
Tôi đang cố gắng xóa một loạt các yếu tố khỏi bản đồ dựa trên điều kiện cụ thể. Làm cách nào để thực hiện điều đó bằng thuật toán STL? Ban đầu tôi nghĩ đến việc sử dụng remove_ifnhưng không thể vì remove_if không hoạt động cho vùng chứa …
118 c++  stl  map 


4
Cách nạp chồng std :: exchange ()
std::swap()được sử dụng bởi nhiều thùng chứa tiêu chuẩn (như std::listvà std::vector) trong quá trình phân loại và thậm chí gán. Nhưng việc thực hiện tiêu chuẩn swap()rất chung chung và không hiệu quả đối với các loại tùy chỉnh. Do đó, hiệu quả có thể đạt được bằng cách …

5
Quyền truy cập bản đồ C ++ loại bỏ các giới hạn (const)
Đoạn mã sau cho biết rằng việc chuyển bản đồ constvào trong operator[]phương thức sẽ loại bỏ các điều kiện: #include <iostream> #include <map> #include <string> using namespace std; class MapWrapper { public: const int &get_value(const int &key) const { return _map[key]; } private: map<int, int> _map; }; int main() …
113 c++  stl  const  maps 

9
Cách ưa thích / thành ngữ để chèn vào bản đồ là gì?
Tôi đã xác định được bốn cách khác nhau để chèn các phần tử vào std::map: std::map<int, int> function; function[0] = 42; function.insert(std::map<int, int>::value_type(0, 42)); function.insert(std::pair<int, int>(0, 42)); function.insert(std::make_pair(0, 42)); Cách nào trong số đó là cách ưa thích / thành ngữ? (Và có cách nào khác mà tôi chưa …
111 c++  stl  insert  stdmap  std-pair 

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.