۶ مطلب با کلمه‌ی کلیدی «اشاره گر» ثبت شده است

استفاده از this در class

سلام!

در جلسه قبلی با مباحث بسیار پایه ای class آشنا شدید. حال این جلسه می خواهیم یکی از مباحث پایه ای (ولی کاربردی) در class یعنی this بپردازیم.

this چیست؟ هر object ای که از یک class می سازیم، یک اشاره گر در خود دارد که آدرس آن، آدرس همان object است. اسم این اشاره گر this است. برای این که با کاربردهای این اشاره گر آشنا شوید، به پاسخ سوال سوم سری قبلی تمرین ها توجه کنید.

۱ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

پاسخ تمرین های سری قبل

سلام!

در این پست، پاسخ تمرین های سری قبل قرار داده شده است.

۰ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

استفاده از تابع به عنوان ورودی یک تابع دیگر (pointer to function)

سلام!

در این جلسه قرار است به یک مبحث بسیار کاربردی بپردازیم. فرض کنید که به شما گفته اند که دو تابع مرتب سازی بنویسید؛ یک تابع یک آرایه از int به عنوان ورودی بگیرد و به صورت صعودی مرتب کند و تابع دیگر یک آرایه از int گرفته و آن را به صورت نزولی مرتب کند. کار بهتر این است که شما یک تابع بنویسید که یک تابع (برای تشخیص وضعیت اعداد نسبت به یک دیگر) را نیز به عنوان ورودی بگیرد و سپس آن را بر اساس آن تابع مرتب کند.

برای این که منظورم را بهتر متوجه شوید، بهتر است ابتدا با روش استفاده از یک تابع به عنوان ورودی یک تابع دیگر آشنا شوید، برای این کار می نویسیم:

void NAME(OUTPUT_TYPE (*NAME) (INPUTS) );

مثلا اگر بخواهید به تابعی به نام sort، تابعی ورودی بدهید که نام آن در تابع sort مثلا compare باشد باید بنویسید:

void sort( bool (*compare) (int a, int b) );

۰ نظر موافقین ۰ مخالفین ۰
روزبه صیادی

تعریف متغیر در heap

سلام

همان طور که قبلا گفته شده است، دو نوع حافظه وجود دارد. حالا فرض کنید که می خواهید برنامه ای بزرگ بنویسید. برنامه ای که حافظه ی مورد نیاز آن از stack بیشتر است. پس باید از heap استفاده کنیم.

بیایید یک برنامه ی ساده تر بنویسیم. مثلا تعریف یک متغیر int در heap:

int *a = new int;

۰ نظر موافقین ۰ مخالفین ۱
روزبه صیادی

پاسخ تمرین های سری قبل

سلام

در این مطلب به سوال های تمرین قبل پاسخ داده شده است.

۰ نظر موافقین ۰ مخالفین ۱
روزبه صیادی

اشاره گر (pointer)

سلام

این جلسه قرار است به مبحث اشاره گر (pointer) بپردازیم.

تعریف: اشاره گر یا pointer نوعی از متغیر است که در آن یک آدرس ذخیره شده است. این آدرس می تواند آدرس هر کجای حافظه باشد (همان طور که قبلا گفته ایم، دو نوع حافظه وجود دارد).

برای تعریف یک اشاره گر که قرار است به آدرس یک متغیر از نوع int اشاره کند، به صورت زیر عمل می کنیم:

int *NAME;

۰ نظر موافقین ۰ مخالفین ۱
روزبه صیادی