مدیریت سیگنال‌ها در ++C

مدیریت سیگنال‌ها در ++C

سیگنال‌ها وقفه‌هایی (interrupt) هستند که از جانب سیستم عامل به یک پروسس (process) تحویل داده می‌شوند و می‌توانند یک برنامه را به صورت دائمی‌ پایان دهند. می‌توان با فشردن کلید Ctrl+C در لینوکس، یونیکس، Mac OS X یا ویندوز یک وقفه ایجاد کرد. سیگنال‌هایی وجود دارند که یک برنامه نمی‌تواند …

ادامه نوشته »

پیش‌پردازنده‌ها یا Preprocessor در ++C

پیش پردازنده‌ها یا Preprocessor در ++C

پیش پردازنده‌ها دستوراتی هستند که به کامپایلر اعلام خواهند کرد که اطلاعات را پیش از آغاز عملیات کامپایل، چگونه پیش پردازش کنند. همه دستورات پیش‌پردازنده با # آغاز می‌شوند. در هر خط، قبل از دستور پیش پردازنده  فقط استفاده از کارکترهای فضای خالی مجاز است. دستورات پیش‌پردازنده دستورات ++C به …

ادامه نوشته »

الگوها یا Templates در ++C

الگوها یا Templates در ++C

در این جلسه به بررسی الگوها یا Templates در ++C خواهیم پرداخت. الگوها پایه و اساس برنامه‌نویسی جنریک (generic) می‌باشند. در این برنامه‌نویسی، کد به روشی نوشته می‌شود که به هیچ نوع داده  خاصی وابسته نباشد. یک الگو طرح یا فرمولی برای ساختن یک کلاس یا تابع جنریک است. کانتینرهای …

ادامه نوشته »

فضای نام یا Namespace در ++C

فضای نام یا Namespace در ++C

وضعیتی را تصور کنید که دو فرد با اسم مشابه یعنی Zara، در یک کلاس داریم. اگر بخواهیم بین آنها تفاوت روشنی به وجود بیاوریم، مجبور خواهیم بود که علاوه بر نام آنها از اطلاعات اضافی مانند محل سکونت – اگر در جاهای متفاوتی از هم زندگی می‌کنند – و …

ادامه نوشته »

حافظه پویا در ++C

حافظه پویا در ++C

درک مناسب از نحوه عملکرد حافظه پویا (داینامیک) کمک شایانی به برنامه نویسان ++C خواهد کرد. حافظه در برنامه ++C به دو بخش تقسیم خواهد شد. Stack: همه متغیرهای تعریف شده درون تابع در حافظه stack ذخیره خواهند شد. Heap: این بخش، حافظه استفاده نشده برنامه است و می‌توان در …

ادامه نوشته »

سون سگمنت چیست؟

نمایشگر های سون سگمنت

سون سگمنت‌ها ( seven-segment display) دسته‌ای از نمایشگرهای پرکاربرد الکترونیکی هستند که می‌توانند اعداد 0 تا 9 را نمایش دهند. از آن‌ها به طور عمده در ساعت‌های دیچیتال، تایمرها و ماشین‌حساب‌ها برای نمایش اطلاعات عددی استفاده می‌شود. همان‌طور که احتمالا از نام آن‌ها می‌توانید حدس بزنید، این نمایشگرها از 7 …

ادامه نوشته »

اعضای استاتیک یک کلاس در ++C

اعضای استاتیک یک کلاس در ++C

با استفاده از کلیدواژه static می‌توان اعضای یک کلاس را به صورت ایستا (استاتیک) تعریف کرد. تعریف یک عضو کلاس به صورت استاتیک بدین معناست که بدون توجه به تعداد اشیا ساخته شده از کلاس، تنها یک کپی از عضو استاتیک وجود خواهد داشت. یک عضو استاتیک بین همه اشیا …

ادامه نوشته »

اشاره‌گر به کلاس در ++C

اشاره‌گر به کلاس ++C

اشاره‌گر به کلاس در ++C، دقیقاً مشابه اشاره‌گر ساختارها می‌باشد و دقیقاً به صورت مشابه،  برای دسترسی به اعضای کلاس از طریق آن، از عملگر دسترسی عضو <- استفاده می‌شود. همانند همه اشاره‌گرها، باید اشاره‌گر را پیش از استفاده مقداردهی اولیه کرد. اجازه دهید با مثال زیر مفهوم اشاره‌گر به …

ادامه نوشته »

محصورسازی داده (Data Encapsulation) در ++C

محصورسازی داده (Data Encapsulation) در ++C

همه برنامه‌های ++C متشکل از عناصر بنیادین زیر هستند. دستورات برنامه (کد): بخشی از برنامه است که عملیات را انجام می‌دهد و تابع نامیده می‌شود. داده برنامه: داده اطلاعات برنامه است که توابع برنامه‌ی آن را تغییر می‌دهند. محصورسازی مفهومی ‌از برنامه‌نویسی شی‌گرا است که داده و توابع تغییردهنده داده‌ها …

ادامه نوشته »

اورلود عملگر تخصیص در ++C

اورلود عملگر تخصیص در ++C

می‌توان عملگر تخصیص (=) را همانند دیگر عملگرها اورلود کرد و همانند سازنده کپی (copy constructor) می‌توان از آن برای ایجاد یک شی جدید استفاده کرد. مثال زیر نحوه اورلود کردن عملگر تخصیص را نشان می‌دهد. #include <iostream> using namespace std; class Distance { private: int feet; // 0 to …

ادامه نوشته »

سازنده‌ها و تخریب‌کننده‌های کلاس در ++C

سازنده‌ها و تخریب کننده‌های کلاس در ++C

سازنده کلاس سازنده کلاس (Constructor) یک تابع عضو ویژه از کلاس می‌باشد که هنگام ایجاد یک شی جدید از آن کلاس اجرا می‌شود. سازنده دقیقا هم‌نام کلاس می‌باشد و هیچ نوع داده‌ای (حتی void) را برنمی‌گرداند. سازنده‌ها در مقداردهی اولیه به متغیرهای عضو بسیار مفید هستند. مثال زیر مفهوم سازنده …

ادامه نوشته »

تابع سازنده کپی در ++C

تابع سازنده کپی در ++C

سازنده کپی (Copy Constructor)، سازنده‌ای است که شی جدید را با استفاده از یک شی از همان کلاس که قبلاً ساخته شده است آغاز می‌کند. سازنده کپی برای: آغاز یک شی از شی دیگر از همان نوع کپی یک شی برای ارسال آن به عنوان آرگومانی از تابع کپی یک …

ادامه نوشته »

توابع عضو کلاس در ++C

توابع عضو کلاس در ++C

یک تابع عضو کلاس، تابعی است که تعریف یا نمونه اولیه‌اش درون تعریف کلاس قرار دارد. این تابع در اشیا عضو آن کلاس به کار رفته و به همه اعضای آن شی دسترسی دارد. اجازه دهید از کلاسی که پیش از این تعریف کردیم اینجا نیز بهره بگیریم و به …

ادامه نوشته »

مدیریت استثناها در ++C یا Exception Handling

مدیریت استثناها در ++C یا Exception Handling

در این جلسه به بررسی مدیریت استثناها در ++C یا Exception Handling می‌پردازیم. یک استثنا حالتی غیرطبیعی است که ممکن است در حین اجرای یک برنامه رخ دهد. یک استثنا در ++C پاسخی است که برای یک وضعیت ویژه پیش آمده حین اجرای برنامه ، مانند تقسیم بر صفر، تدارک …

ادامه نوشته »

فایل‌ها و استریم‌ها در ++C

فایل‌ها و استریم‌ها در ++C

تا اینجا از کتابخانه‌ی استاندارد iostream استفاده می‌کردیم، که متدهای cin و cout را به ترتیب برای خواندن از ورودی استاندارد و نوشتن در خروجی استاندارد به کار می‌برد. این آموزش به شما نحوه خواندن و نوشتن در فایل‌ها را نشان خواهد داد. برای اینکار به یک کتابخانه استاندارد از …

ادامه نوشته »