IT <code> - Tag c++ [Câu hỏi]

111
hữu ích
10trả lời
47k xem

Biểu thức con trỏ: * ptr ++, * ++ ptr và ++ * ptr?

Gần đây tôi đã gặp phải vấn đề này mà bản thân tôi không thể hiểu được. Ba biểu thức này thực sự có nghĩa là gì? *ptr++ *++ptr ++*ptr Tôi đã thử Ritchie. Nhưng thật không may là không thể làm theo những gì ông nói…
120
hữu ích
7trả lời
113k xem

Gọi constructor trong c ++ mà không cần mới?

Tôi thường thấy rằng mọi người tạo các đối tượng trong C ++ bằng cách sử dụng Thing myThing("asdf"); Thay vì điều này: Thing myThing = Thing("asdf"); Điều này dường như hoạt động (sử dụng gcc), ít nhất là miễn là…
248
hữu ích
7trả lời
160k xem

Làm cách nào để phát hiện nếu tôi đang biên dịch mã với một phiên bản Visual Studio cụ thể?

Có cách nào để biết nếu tôi biên dịch theo phiên bản Microsoft Visual Studio cụ thể không?
112
hữu ích
9trả lời
107k xem

Tại sao nên sử dụng #ifndef CLASS_H và #define CLASS_H trong tệp .h nhưng không phải trong .cpp?

Tôi luôn thấy mọi người viết lớp.h #ifndef CLASS_H #define CLASS_H //blah blah blah #endif Câu hỏi là, tại sao họ không làm điều đó cho tệp .cpp có chứa các định nghĩa cho các hàm lớp? Hãy nói rằng tôi có…
70
hữu ích
9trả lời
117k xem

Khởi tạo một mảng const trong trình khởi tạo lớp trong C ++?

Tôi có lớp sau trong C ++: class a { const int b[2]; // other stuff follows // and here's the constructor a(void); } Câu hỏi là, làm thế nào để tôi khởi tạo b trong danh sách khởi tạo, với điều…
75
hữu ích
3trả lời
13k xem

Làm thế nào để thực thi ngữ nghĩa di chuyển khi một vectơ phát triển?

Tôi có một std::vectorđối tượng của một lớp nhất định A. Lớp này không tầm thường và có các hàm tạo sao chép và các hàm tạo di chuyển được định nghĩa. std::vector<A> myvec; Nếu tôi lấp đầy vectơ bằng Acác đối…
152
hữu ích
3trả lời
75k xem

C ++ 11 Trả về tối ưu hóa giá trị hoặc di chuyển? [bản sao]?

Câu hỏi này đã có câu trả lời ở đây: C ++ 11 giá trị và di chuyển nhầm lẫn ngữ nghĩa (câu lệnh return) 6 câu trả lời…
243
hữu ích
26trả lời
108k xem

Enum to string trong C ++ 11 / C ++ 14 / C ++ 17 hiện đại và C ++ 20 trong tương lai?

Trái với tất cả các câu hỏi tương tự khác, câu hỏi này là về việc sử dụng các tính năng mới của C ++. 2008 c Có cách nào đơn giản để chuyển đổi C ++ enum thành chuỗi không? 2008 c Cách dễ dàng để sử dụng các biến của…
400
hữu ích
10trả lời
324k xem

Chuỗi hằng tĩnh (thành viên lớp)?

Tôi muốn có một hằng số tĩnh riêng cho một lớp (trong trường hợp này là một nhà máy hình dạng). Tôi muốn có một cái gì đó của loại. class A { private: static const string RECTANGLE = "rectangle"; } Thật…
152
hữu ích
4trả lời
10k xem

Hoạt động có phải là sai <đúng hay không?

Thông số kỹ thuật C ++ có định nghĩa: sự tồn tại của toán tử 'nhỏ hơn' đối với các tham số boolean và nếu vậy, kết quả của 4 hoán vị tham số? Nói cách khác, các kết quả từ các hoạt động sau được xác định bởi đặc…
82
hữu ích
5trả lời
46k xem

Các tùy chọn liên kết chính xác để sử dụng std :: thread trong GCC trong linux là gì?

Xin chào Tôi đang cố gắng sử dụng std::threadvới G ++. Đây là mã kiểm tra của tôi #include <thread> #include <iostream> int main(int, char **){ std::thread tt([](){…
82
hữu ích
9trả lời
132k xem

Làm thế nào để bạn vô hiệu hóa các cảnh báo biến không sử dụng đến từ gcc trong mã bên thứ 3 mà tôi không muốn chỉnh sửa?

Tôi muốn biết công tắc nào bạn chuyển đến trình biên dịch gcc để tắt các cảnh báo biến không sử dụng? Tôi đang gặp lỗi khi tăng tốc trên windows và tôi không muốn chạm vào mã…
8
hữu ích
2trả lời
2.0k xem
627
hữu ích
18trả lời
40k xem

Mã có thể hợp lệ trong cả C và C ++ có thể tạo ra hành vi khác nhau khi được biên dịch theo từng ngôn ngữ không?

C và C ++ có nhiều điểm khác biệt và không phải tất cả mã C hợp lệ đều là mã C ++ hợp lệ. (Theo "hợp lệ" Tôi có nghĩa là mã tiêu chuẩn với hành vi được xác định, nghĩa là không cụ thể thực hiện / không xác định / v.v.) Có…
116
hữu ích
4trả lời
9.0k xem

Đối với vòng lặp bên trong dấu ngoặc nhọn của chính nó?

Tôi đã đi qua bố cục vòng lặp này: #include <iostream> int main() { { for (int i = 0; i != 10; ++i) { std::cout << "delete i->second;" << std::endl; }…

15 30 50 mỗi trang