View Full Version : سوال: کلاس ذخیره سازی mutable چیست؟
asdasd123123
چهارشنبه 18 دی 1392, 15:17 عصر
کلاس ذخیره سازی mutable چیست؟ و نحوه ی بکار گیری آن را در یک مثال بگویید لطفا.
کامبیز اسدزاده
چهارشنبه 18 دی 1392, 18:47 عصر
كلاس ذخيره mutable تنها روي اعضاي داده اي يك كلاس مي تواند اعمال شود و باعث مي شود اين اعضا حتي اگر در كلاس به صورت const تعريف شده اند قابل تغيير باشند.
این مثال رو ببینید : در این کد کامپایلر اجازه نمیدهد مقدار 100 به MyVariable.y نسبت داده شود.
دلیل : int y; به صورت یک ثابت تعریف شده.
ولی حال در MyVariable.x = 100; مشکلی نداریم زیر mutable int x; به صورت mutable یعنی تغییر پذیر تعریف شده است.
class MyClass {
public:
MyClass() : x(1), y(2) { };
mutable int x;
int y;
};
int main() {
const MyClass MyVariable;
MyVariable.x = 100;
// MyVariable.y = 100; ERROR
}
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.