PDA

View Full Version : آشنایی با این شیوه از برنامه نویسی



boysilent
سه شنبه 30 آبان 1391, 13:40 عصر
سلام دوستان عزیز میخواستم در مورد برنامه نویسی شی گرا اطلاعاتی بدست بیارم برنامه ای با کلاس ها هم نوشته ام ولی میخواستم اگر دوستان اطلاعاتی در مورد این کدها دارند در این تاپیک بگذارند. ممنون میشم.

کلاسی به اسم phone داریم مثلا:

1.Phone* Start_ptr = NULL;
Phone* current = NULL;

تعریف این کد در کجا قابل قبول هست؟

2. Phone *next;

3.و اگه میشه این کد
void Add_new()
{
Phone* temp = new Phone;
Phone* temp2 = Start_ptr;

clrscr();

cout << "Enter the name : ";
cin >> temp->name;
cout << "Family : ";
cin >> temp->family;
cout << "Phone number : ";
cin >> temp->tel;
البته از این قسمت
temp->next = NULL;

if ( Start_ptr == NULL )
{
Start_ptr = temp;
}

else
{
while( temp2->next != NULL )
{
temp2 = temp2->next;
}
temp2->next = temp;
}

return;

mehdi.mousavi
سه شنبه 30 آبان 1391, 14:29 عصر
سلام.


منظورتون از اینکه "تعریف در کجا قابل قبوله" چیه؟ میشه بیشتر توضیح بدید؟
اگه میشه "این کد" چی؟

لطفا سوال خودتون رو به صراحت مطرح کنید، در غیر اینصورت به ناچار اونو حذف خواهم کرد.

موفق باشید.

مسعود اقدسی فام
سه شنبه 30 آبان 1391, 14:32 عصر
این چیزی که اینجا نوشتید بیشتر مربوط به اشاره‌گر و لیست پیوندی هست تا مفهوم شی گرایی.

یک و دو یکی هستن دیگه. تعریف اشاره‌گر به کلاس. آدم شک می‌کنه اونظور که ادعا دارید خودتون کد رو نوشتید یا نه. حالا مهم نیست.

اینکه ستاره چسبیده باشه به اسم کلاس یا به اسم متغیر و یا اول NuLL بشه یا نشه هیچ فرق خاصی نداره. می شه اول Null نباشه و بعدا NULL کرد.

از لحاظ کد نویسی همه جا قابل قبول هستن. اما از نظر الگوریتمی و مفهومی اگه نیت لیست پیوندی باشه جایگاه خودشون رو دارن که کدتون رو بذارید بهتر می شه توضیح داد.

boysilent
سه شنبه 30 آبان 1391, 16:33 عصر
نه من این کد رو ننوشتم من یک برنامه دیگه با کلاس ها نوشتم /میخاسم بدونم این نوع تعریف ها کجای کلاس باید نوشته بشن
PUBLIC یا PRIVATE
واما این قسمت :اگه میشه "این کد" چی؟
این کد رو هم توضیح بدید...
ضمیمه کردم.

mohammadali1375
چهارشنبه 01 آذر 1391, 23:43 عصر
ببین این private و public توی کلاس مینویسند مشخص میشه سطح دسترسیشون چجوریاس :
class test
{
public:
int a;
private:
int b;
};