سؤال

وأنا أعلم أنه إذا أفعل شيئا من هذا القبيل:

class Obj
{
public:
    int* nine;
};

Obj Obj1; //Awesome name
int eight = 8;
Obj1.nine = &eight;
Obj Obj2 = Obj1; //Another Awesome name

وبعد ذلك سوف Obj1 وObj2s nine ويشير إلى نفسه 8، ولكن سوف أنهما يشتركان في نفس المؤشر؟ أي بمعنى:.

int Necronine = 9;
Obj1.nine = &Necronine;
Obj2.nine == ???

وسوف Obj2 في نقطة nine إلى Necronine، أو أنه سيبقى لافتا في 8؟

هل كانت مفيدة؟

المحلول

<اقتباس فقرة>   

وسوف نقطة Obj2 لNecronine تسعة،   أو أنه سيبقى لافتا في 8؟

وسوف تبقى لافتا في 8. عند تنفيذ هذا السطر: الكائنات Obj2 = Obj1. // كل كائن له له مؤشر خاص يتم نسخ value(copy) من obj1.nine إلى obj2.nine و thats عليه.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top