Nếu bạn cần viết lại mã C++ sau trong D, bạn sẽ làm như thế nào?Làm thế nào để viết lại mã C++ sử dụng mutable trong D?
struct A{
const S* _s;
B _b;
C _c;
mutable C _c1, _c2;
A(const B& b, const C& c, const S* s){ /*...*/ }
void compute(const R& r) const
{
//...
_c1 = ...
_c2 = ...
}
};
D không có mutable
, và dựa trên kinh nghiệm của tôi, nó hiếm khi được sử dụng trong C++. Tuy nhiên, giả sử mutable
được sử dụng vì những lý do chính đáng tại đây, các tùy chọn của tôi trong D là gì?
Đây là một câu hỏi tương tự: http://stackoverflow.com/questions/4219600/logical-const-in-d –