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

Thẻ mẫu được sử dụng trong nhiều ngữ cảnh: lập trình chung (đặc biệt là C ++) và tạo dữ liệu / tài liệu bằng cách sử dụng các công cụ mẫu. Khi sử dụng thẻ này khi thực hiện các câu hỏi nặng - gắn thẻ ngôn ngữ mã, việc triển khai được viết bằng.



8
* ngNếu khác nếu trong mẫu
Làm thế nào tôi có nhiều trường hợp trong một *ngIftuyên bố? Tôi đang sử dụng để Vue hoặc góc 1 với việc có một if, else ifvà else, nhưng nó có vẻ như góc 4 chỉ có một true( if) và false( else) điều kiện. Theo tài liệu, tôi …


16
Tách các lớp C ++ được tạo khuôn mẫu thành các tệp .hpp / .cpp - có thể không?
Tôi gặp lỗi khi cố biên dịch lớp mẫu C ++ được phân tách giữa tệp .hppvà .cpptệp: $ g++ -c -o main.o main.cpp $ g++ -c -o stack.o stack.cpp $ g++ -o main main.o stack.o main.o: In function `main': main.cpp:(.text+0xe): undefined reference to 'stack<int>::stack()' main.cpp:(.text+0x1c): undefined reference to 'stack<int>::~stack()' …

8
Initializer_list và chuyển ngữ nghĩa
Tôi có được phép di chuyển các phần tử ra khỏi a std::initializer_list<T>không? #include <initializer_list> #include <utility> template<typename T> void foo(std::initializer_list<T> list) { for (auto it = list.begin(); it != list.end(); ++it) { bar(std::move(*it)); // kosher? } } Vì std::intializer_list<T>yêu cầu sự chú ý đặc biệt của trình biên dịch …



4
Trình tạo mẫu rõ ràng - nó được sử dụng khi nào?
Sau vài tuần nghỉ ngơi, tôi đang cố gắng mở rộng và mở rộng vốn hiểu biết của mình về các mẫu với cuốn sách Mẫu - Hướng dẫn hoàn chỉnh của David Vandevoorde và Nicolai M. Josuttis, và điều tôi đang cố gắng hiểu tại thời điểm này là …
95 c++  templates 



4
Thông số mẫu không phải loại
Tôi hiểu rằng tham số mẫu không phải kiểu phải là một biểu thức tích phân không đổi. Ai đó có thể làm sáng tỏ lý do tại sao nó như vậy? template <std::string temp> void foo() { // ... } error C2993: 'std::string' : illegal type for non-type template …
93 c++  templates 

4
Làm cách nào để kiểm tra loại tham số mẫu?
Giả sử tôi có một hàm mẫu và hai lớp class animal { } class person { } template<class T> void foo() { if (T is animal) { kill(); } } Làm cách nào để kiểm tra T là động vật? Tôi không muốn có thứ gì đó kiểm tra …
92 c++  templates 

6
Chuyên môn hóa mẫu của một phương thức duy nhất từ ​​một lớp mẫu
Luôn xem xét rằng tiêu đề sau, chứa lớp mẫu của tôi, được bao gồm trong ít nhất hai .CPPtệp, mã này biên dịch chính xác: template <class T> class TClass { public: void doSomething(std::vector<T> * v); }; template <class T> void TClass<T>::doSomething(std::vector<T> * v) { // Do something with …

2
“Sử dụng ODR” có nghĩa là gì?
Điều này chỉ xuất hiện trong bối cảnh của một câu hỏi khác . Rõ ràng các hàm thành viên trong các mẫu lớp chỉ được khởi tạo nếu chúng được sử dụng ODR. Ai đó có thể giải thích chính xác điều đó có nghĩa là gì. Các bài …

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.