آموزش C++

مباحث پایه زبان C++

ساختارها در زبان C++ – آموزش زبان C++

  • جمعه ۲ آذر ۱۳۹۷
  • بازدید ۲,۴۱۵ نفر

تصویر cpp-data-structures_4465 ساختارها در زبان C++ - آموزش زبان C++

ساختارها در زبان C++

ساختارها مشابه آرایه ها هستند با این تفاوت که در آرایه ها فقط می توانید یک نوع داده داشته باشید. یعنی همه عناصر آرایه باید از این نوع باشند. اما ساختارها اجازه می دهد تا انواع داده مختلف را در یک مجموعه قرار دهیم. از ساختار برای نشان دادن یک رکورد استفاده می شود. فرض کنید می خواهید کتاب های خود را در یک کتابخانه نگه داری کنید. ممکن است بخواهد اطلاعات زیر را در مورد هر کتاب ذخیره کنید:

  • عنوان (Title)
  • نویسنده (Author)
  • موضوع (Subject)
  • شناسه (Id)

تعریف یک ساختار

برای تعریف یک ساختار باید از کلمه کلیدی struct استفاده کنید. شکل کلی تعریف یک ساختار را در زیر مشاهده می کنید:

بخش structure tag اختیاری است و تعریف عضوهای ساختار مانند تعریف متغیرهای عادی می باشد. بعد از } و قبل از سمی کالن می توانید متغیرهای خود را که از نوع ساختار خواهند را تعریف کنید. در زیر نحوه تعریف ساختار Book را مشاهده می کنید:

دسترسی به اعضای ساختار

به منظور دسترسی به اعضای یک ساختار می توانید از عملگر (.) استفاده کنید. در هنگام تعریف یک متغیر از نوع ساختار باید از کلمه کلیدی struct استفاده کنید. به مثال زیر توجه کنید:

امتحان کنید

زمانی که کد بالا توسط کامپایلر زبان C++ اجرا شود، نتیجه زیر را تولید خواهد کرد:

ساختار به عنوان آرگومان تابع

شما می توانید یک ساختار را مثل متغیرهای عادی و اشاره گرها به یک تابع ارسال کنید:

امتحان کنید

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

اشاره گر به ساختار

تعریف اشاره گر به ساختار مانند تعریف اشاره گر به یک متغیر عادی می باشد:

حال می توانید آدرس متغیر ساختاری خود را در اشاره گر بالا ذخیره کنید. برای پیدا کردن آدرس یک متغیر ساختاری از عملگر & استفاده کنید:

برای دسترسی به اعضای یک ساختار از طریق یک اشاره گر به آن ساختار باید از عملگر (->)  استفاده کنید. مانند نمونه زیر:

مثال فوق را با استفاده از اشاره گر به ساختار تغییر می دهیم:

امتحان کنید

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

کلمه کلیدی typedef

یک روش ساده تر برای ایجاد ساختار ها استفاده از دستور typedef می باشد که با استفاده از آن می توان یک نام مستعار برای یک ساختار تعریف کرد. به مثال زیر توجه کنید:

حال می توانید به طور مستقیم از Books به منظور ایجاد متغیرهایی از نوع ساختار Books استفاده کنید (بدون استفاده از struct). مانند نمونه زیر:

با استفاده از typedef می توان برای سایر انواع داده ها نیز نام مستعار تعریف کرد:

متغیرهای x، y و z هر سه از نوع اشاره گر به long int هستند.

 

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است