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

Các hằng số trong lập trình là các định nghĩa có giá trị được cố định trong suốt quá trình thực thi chương trình. Văn học trong hầu hết các ngôn ngữ là hằng số, ví dụ. Trong các kiểu lập trình tham chiếu minh bạch, tất cả các định nghĩa là không đổi. Vùng lưu trữ dữ liệu đủ điều kiện const (đối tượng, trường, biến, tham số) là một khu vực "không bao giờ thay đổi", do đó cho phép tối ưu hóa trình tạo mã bổ sung và kiểm tra độ chính xác của chương trình.


9
Làm cách nào để tôi có thể gọi một hàm C ++ có hàm char ** trên một số nền tảng và const char ** trên một số nền tảng khác?
Trên các máy Linux (và OS X) của tôi, iconv()hàm có nguyên mẫu này: size_t iconv (iconv_t, char **inbuf... trong khi trên FreeBSD, nó trông như thế này: size_t iconv (iconv_t, const char **inbuf... Tôi muốn mã C ++ của mình được xây dựng trên cả hai nền tảng. Với …
91 c++  const  portability 

5
Xóa một con trỏ tới const (T const *)
Tôi có một câu hỏi cơ bản liên quan đến con trỏ const. Tôi không được phép gọi bất kỳ hàm thành viên không phải const nào bằng cách sử dụng con trỏ const. Tuy nhiên, tôi được phép làm điều này trên một con trỏ const: delete p; Điều …

6
Tại sao toán tử [] không phải là const cho bản đồ STL?
Ví dụ có sẵn, vì lợi ích của câu hỏi: void MyClass::MyFunction( int x ) const { std::cout << m_map[x] << std::endl } Điều này sẽ không biên dịch, vì toán tử [] không phải là const. Điều này thật không may, vì cú pháp [] trông rất rõ ràng. …
89 c++  const 



6
Đã sửa đổi nhiều mảng ở phạm vi tệp
Tôi muốn tạo một mảng tĩnh không đổi để được sử dụng trong toàn bộ tệp triển khai Objective-C của mình, tương tự như một cái gì đó như thế này ở cấp cao nhất của tệp ".m" của tôi: static const int NUM_TYPES = 4; static int types[NUM_TYPES] = …

9
Tham số có thể không đổi?
Tôi đang tìm kiếm C # tương đương với Java final. Nó tồn tại? C # có bất cứ điều gì như sau: public Foo(final int bar); Trong ví dụ trên, barlà một biến chỉ đọc và không thể thay đổi bởi Foo(). Có cách nào để làm điều này …








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.