<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:series="https://publishpress.com/"
	>

<channel>
	<title>آموزش برنامه نویسی c++ از مبتدی تا پیشرفته</title>
	<atom:link href="https://melec.ir/tag/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-c-%D8%A7%D8%B2-%D9%85%D8%A8%D8%AA%D8%AF%DB%8C-%D8%AA%D8%A7-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA/feed/" rel="self" type="application/rss+xml" />
	<link>https://melec.ir/tag/آموزش-برنامه-نویسی-c-از-مبتدی-تا-پیشرفت/</link>
	<description>آموزش الکترونیک,آموزش رزبری پای,آموزش راه اندازی ماژول و سنسور,آموزش آردوینو,نرم افزار های الکترونیک, طراحیPCB,برنامه نویسی میکروکنترلرها ARM AVR PIC FPGA</description>
	<lastBuildDate>Thu, 30 Jul 2020 13:37:23 +0000</lastBuildDate>
	<language>fa-IR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://melec.ir/micromilad/wp-content/uploads/2016/02/logo-1.png</url>
	<title>آموزش برنامه نویسی c++ از مبتدی تا پیشرفته</title>
	<link>https://melec.ir/tag/آموزش-برنامه-نویسی-c-از-مبتدی-تا-پیشرفت/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>برنامه‌نویسی وب در ++C</title>
		<link>https://melec.ir/cpp-web-programming/</link>
					<comments>https://melec.ir/cpp-web-programming/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 06 Aug 2020 06:40:27 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[CGI]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[سی جی آی]]></category>
		<category><![CDATA[برنامه نویسی شی گرا]]></category>
		<category><![CDATA[Common Gate interface]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31389</guid>

					<description><![CDATA[<p>CGI چیست؟ رابط دروازه مشترک (Common Gate interface) یا CGI، مجموعه‌ای از استانداردها می‌باشد که چگونگی ردوبدل کردن اطلاعات بین سرور و یک اسکریپت دلخواه را تعریف می‌کند. مشخصات فعلی CGI توسط NCSA نگه‌داری می‌شود.CGI ،NCSA را به صورت زیر تعریف می‌کند. رابط دروازه مشترک، استانداردی برای دروازه خروجی برنامه به رابط سرور اطلاعاتی مانند سرورهای HTTP می‌باشد. نسخه فعلی CGI/1.1 است و نسخه CGI/1.2 تحت توسعه می‌باشد. مرورگر وب (Web Browsing) برای درک مفهوم CGI، اجازه دهید که بررسی کنیم با کلیک کردن روی یک لینک در مرورگر چه اتفاقی خواهد افتاد. مرورگر شما با سرور HTTP وب تماس حاصل کرده و برای یک URL،مثلاً یک فایل، درخواست ارسال می‌کند. سرور وب URL را تجزیه (parse) کرده و به دنبال نام فایل می‌گردد. اگر نام فایل درخواستی را پیدا کند، آن را به مرورگر ارسال خواهد کرد و در غیراین صورت یک پیام خطا مبنی بر اینکه فایل درخواست &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-web-programming/">برنامه‌نویسی وب در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-web-programming/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>چند نخی یا Multithreading در ++C</title>
		<link>https://melec.ir/cpp-multithreading/</link>
					<comments>https://melec.ir/cpp-multithreading/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Wed, 05 Aug 2020 06:40:46 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[نخ]]></category>
		<category><![CDATA[چند نخی]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[چند وظیفه‌ای]]></category>
		<category><![CDATA[Thread]]></category>
		<category><![CDATA[C++ Multithreading]]></category>
		<category><![CDATA[multitasking]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[Detaching Threads]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[Joining Threads]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[نخ‌های قابل اتصال در c++]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[نخ‌های منفصل در c++]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31482</guid>

					<description><![CDATA[<p>چند نخی شکل ویژه‌ای از چند وظیفه‌ای (multitasking) است. چند وظیفه‌ای خاصیتی است که به کامپیوتر این امکان را می‌دهد تا دو یا چند برنامه را به طور همزمان اجرا کند. در حالت کلی، دو نوع چند وظیفه‌ای وجود دارد: مبتنی بر پروسس‌ (process-based) و مبتنی بر نخ (thread-based). چند وظیفه‌ای مبتنی بر پروسس، اجرای همزمان برنامه‌ها را برعهده می‌گیرد. چند وظیفه‌ای مبتنی بر نخ اجرای همزمان چند تکه از یک برنامه را برعهده می‌گیرد. یک برنامه شامل دو یا چند بخش است که می‌توان همزمان آنها را اجرا کرد. هر بخش از برنامه یک نخ (thread) نامیده می‌شود، و هر نخ یک مسیر اجرایی جداگانه تعریف می‌کند. ++C هیچ پشتیبانی داخلی برای برنامه‌های چند نخی فراهم نکرده است. در عوض، این برعهده سیستم عامل است که چنین ویژگی را به طور کامل فراهم کند. این آموزش فرض را براین می‌گذارد که شما از سیستم عامل لینوکس استفاده می‌کنید. قصد &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-multithreading/">چند نخی یا Multithreading در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-multithreading/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>مدیریت سیگنال‌ها در ++C</title>
		<link>https://melec.ir/cpp-signal-handling/</link>
					<comments>https://melec.ir/cpp-signal-handling/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Tue, 04 Aug 2020 06:40:46 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[c++ interrupt]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<category><![CDATA[زبان برنامه‌نویسی ++C]]></category>
		<category><![CDATA[مدیریت سیگنال در c++]]></category>
		<category><![CDATA[C++ Signal Handling]]></category>
		<category><![CDATA[وقفه در C++]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31340</guid>

					<description><![CDATA[<p>سیگنال‌ها وقفه‌هایی (interrupt) هستند که از جانب سیستم عامل به یک پروسس (process) تحویل داده می‌شوند و می‌توانند یک برنامه را به صورت دائمی‌ پایان دهند. می‌توان با فشردن کلید Ctrl+C در لینوکس، یونیکس، Mac OS X یا ویندوز یک وقفه ایجاد کرد. سیگنال‌هایی وجود دارند که یک برنامه نمی‌تواند آنها را دریافت کند. اما لیستی از سیگنال‌ها در زیر آمده است که برنامه توانایی دریافت آنها و ایجاد واکنش مناسب نسبت به آنها را دارد. این سیگنال‌ها در هدرفایل &#60;csignal&#62; تعریف شده‌اند. ردیف سیگنال و توصیف آن 1 SIGABRT خاتمه غیرعادی یک برنامه، مانند فراخوانی abort. 2 SIGFPE یک عملیات ریاضی نادرست، مانند تقسیم بر صفر یا عملیات منجر به سرریزی (overflow). 3 SIGILL شناسایی یک دستور غیرمجاز. 4 SIGINT دریافت یک سیگنال interactive attention. 5 SIGSEGV یک دسترسی غیرمجاز به حافظه. 6 SIGTERM ارسال یک درخواست پایان برنامه  به خود برنامه. تابع ()signal کتابخانه مدیریت سیگنال‌ها تابع signal &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-signal-handling/">مدیریت سیگنال‌ها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-signal-handling/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>پیش‌پردازنده‌ها یا Preprocessor در ++C</title>
		<link>https://melec.ir/cpp-preprocessor/</link>
					<comments>https://melec.ir/cpp-preprocessor/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Mon, 03 Aug 2020 06:40:39 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[پیش پردازنده‌ها در ++C]]></category>
		<category><![CDATA[C++ Preprocessor]]></category>
		<category><![CDATA[ماکروها در ++C]]></category>
		<category><![CDATA[c++ macros]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31318</guid>

					<description><![CDATA[<p>پیش پردازنده‌ها دستوراتی هستند که به کامپایلر اعلام خواهند کرد که اطلاعات را پیش از آغاز عملیات کامپایل، چگونه پیش پردازش کنند. همه دستورات پیش‌پردازنده با # آغاز می‌شوند. در هر خط، قبل از دستور پیش پردازنده  فقط استفاده از کارکترهای فضای خالی مجاز است. دستورات پیش‌پردازنده دستورات ++C به حساب نمی‌آیند، بنابراین پس از آنها سمی‌کالن (;) قرار نمی‌گیرد. تاکنون دستور include# را در تمام مثال‌های خودمان دیده‌ایم. این ماکرو برای ضمیمه کردن یک هدرفایل در فایل سورس به کار می‌رود. ++C از چندین دستور پیش‌پردازنده پشتیبانی می‌کند. این دستورات شامل «include ،#define ،#if ،#else ،#line#» و &#8230; هستند. اجازه دهید برخی از مهم‌ترین آنها را بررسی کنیم. پیش‌پردازنده define# این پیش‌پردازنده، ثابت‌های نمادین (symbolic constant) ایجاد می‌کند. این ثابت‌های نمادین ماکرو (macro) نامیده می‌شوند و شکل کلی زیر را دارند. #define macro-name replacement-text پس از نوشتن این خط، تمام ماکروهای متعاقب پیش از کامپایل برنامه، با عبارت replacement-text &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-preprocessor/">پیش‌پردازنده‌ها یا Preprocessor در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-preprocessor/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>الگوها یا Templates در ++C</title>
		<link>https://melec.ir/cpp-templates/</link>
					<comments>https://melec.ir/cpp-templates/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Sun, 02 Aug 2020 06:40:47 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[یادگیری ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[الگوها در سی پلاس پلاس]]></category>
		<category><![CDATA[C++ Templates]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[برنامه‌نویسی جنریک]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31310</guid>

					<description><![CDATA[<p>در این جلسه به بررسی الگوها یا Templates در ++C خواهیم پرداخت. الگوها پایه و اساس برنامه‌نویسی جنریک (generic) می‌باشند. در این برنامه‌نویسی، کد به روشی نوشته می‌شود که به هیچ نوع داده  خاصی وابسته نباشد. یک الگو طرح یا فرمولی برای ساختن یک کلاس یا تابع جنریک است. کانتینرهای (container) کتابخانه مانند شمارشگر (iterator) و الگوریتم (algorithm) مثال‌هایی از برنامه‌نویسی جنریک هستند که با استفاده از مفهوم الگو توسعه یافته‌اند. هر کانتینر،مانند vector، تنها یک تعریف مشخص دارد، اما می‌توان vectorهایی از انواع مختلف مانند &#60;vector&#60;int یا &#60;vector&#60;string تعریف کرد. می‌توان از الگوها همچون کلاس‌ها برای تعریف توابع نیز استفاده کرد، اجازه دهید طرز کارآنها را باهم بررسی کنیم. الگوی تابع (function template) شکل عمومی ‌تعریف یک الگوی تابع به صورت زیر است. template &#60;class type&#62; ret-type func-name(parameter list) { // body of function } در این تعریف، type یک نام جایگزین برای نوع داده مورد استفاده تابع است. &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-templates/">الگوها یا Templates در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-templates/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>فضای نام یا Namespace در ++C</title>
		<link>https://melec.ir/cpp-namespaces/</link>
					<comments>https://melec.ir/cpp-namespaces/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Sat, 01 Aug 2020 06:40:13 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<category><![CDATA[++Namespaces in C]]></category>
		<category><![CDATA[فضای نام در ++C]]></category>
		<category><![CDATA[دستور using در ++C]]></category>
		<category><![CDATA[Nested Namespaces]]></category>
		<category><![CDATA[using in c++]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31305</guid>

					<description><![CDATA[<p>وضعیتی را تصور کنید که دو فرد با اسم مشابه یعنی Zara، در یک کلاس داریم. اگر بخواهیم بین آنها تفاوت روشنی به وجود بیاوریم، مجبور خواهیم بود که علاوه بر نام آنها از اطلاعات اضافی مانند محل سکونت &#8211; اگر در جاهای متفاوتی از هم زندگی می‌کنند &#8211; و نام پدر یا مادر و &#8230; استفاده کنیم. مشابه همین وضعیت در برنامه‌های ++C هم ممکن است به وجود بیاید. برای مثال، ممکن است در کدتان تابعی به نام ()xyz تعریف کنید و در یک کتابخانه دیگر نیز دقیقاً تابعی با همان نام ()xyz موجود باشد. در این حالت کامپایلر هیچ اطلاعی ندارد که باید به کدام نسخه از تابع ()xyz اشاره کند. برای حل این مشکل یک فضای نام تعریف می‌کنیم و از آن به عنوان همان اطلاعات اضافی برای متمایزکردن توابع، کلاس‌ها، متغیرها و &#8230; استفاده می‌کنیم. با استفاده از فضای نام، می‌توان زمینه‌ای (context) که نام‌ها در &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-namespaces/">فضای نام یا Namespace در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-namespaces/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>حافظه پویا در ++C</title>
		<link>https://melec.ir/cpp-dynamic-memory/</link>
					<comments>https://melec.ir/cpp-dynamic-memory/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Fri, 31 Jul 2020 06:40:51 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[عملگرها در ++C]]></category>
		<category><![CDATA[عملگر new در سی پلاس پلاس]]></category>
		<category><![CDATA[حافظه پویا در C]]></category>
		<category><![CDATA[عملگرهای delete در سی پلاس پلاس]]></category>
		<category><![CDATA[C++ Dynamic Memory]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31300</guid>

					<description><![CDATA[<p>درک مناسب از نحوه عملکرد حافظه پویا (داینامیک) کمک شایانی به برنامه نویسان ++C خواهد کرد. حافظه در برنامه ++C به دو بخش تقسیم خواهد شد. Stack: همه متغیرهای تعریف شده درون تابع در حافظه stack ذخیره خواهند شد. Heap: این بخش، حافظه استفاده نشده برنامه است و می‌توان در حین اجرای برنامه از آن برای تخصیص حافظه به صورت پویا استفاده کرد. در بسیاری اوقات از ابتدا اطلاع دقیقی از میزان حافظه مورد نیاز برای ذخیره متغیرها در دسترس نیست و بنابراین می‌توان در زمان اجرا حافظه مورد نیاز را به آنها اختصاص داد. در زمان اجرا، از حافظه heap می‌توان به متغیرهای داده شده، حافظه تخصیص داد. این کار با استفاده از یک عملگر ویژه که آدرس فضای اختصاص داده شده را برمی‌گرداند انجام می‌شود. این عملگر new است. اگر به حافظه پویای اختصاص یافته دیگر نیازی نداشته باشید، می‌توانید با استفاده از عملگر delete آن را آزاد &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-dynamic-memory/">حافظه پویا در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-dynamic-memory/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>محصورسازی داده (Data Encapsulation) در ++C</title>
		<link>https://melec.ir/cpp-data-encapsulation/</link>
					<comments>https://melec.ir/cpp-data-encapsulation/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 13:37:23 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[زبان برنامه‌نویسی ++C]]></category>
		<category><![CDATA[چکیده‌سازی داده در ++C]]></category>
		<category><![CDATA[محصورسازی داده در ++C]]></category>
		<category><![CDATA[یادگیری ++C]]></category>
		<category><![CDATA[++Data Encapsulation in C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[محصورسازی]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[شی‌گرایی در ++C]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرایی]]></category>
		<category><![CDATA[C++ Class]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31272</guid>

					<description><![CDATA[<p>همه برنامه‌های ++C متشکل از عناصر بنیادین زیر هستند. دستورات برنامه (کد): بخشی از برنامه است که عملیات را انجام می‌دهد و تابع نامیده می‌شود. داده برنامه: داده اطلاعات برنامه است که توابع برنامه‌ی آن را تغییر می‌دهند. محصورسازی مفهومی ‌از برنامه‌نویسی شی‌گرا است که داده و توابع تغییردهنده داده‌ها را به هم مربوط کرده و هردوی آنها را دربرابر تداخل و سوء استفاده خارجی امن نگه می‌دارد. محصورسازی داده به یک مفهوم مهم شی‌گرایی، یعنی مخفی‌سازی داده (data hiding) منجر می‌شود. محصورسازی داده سازوکار ایجاد داده و توابع به کارگیرنده‌ی آنها، و ‌چکیده‌سازی داده سازوکار بروز دهنده رابط خارجی و مخفی سازی جزئیات از کاربر می‌باشد. ++C خواص محصورسازی و مخفی‌سازی داده را از طریق ساخت نوع داده‌های ساخته کاربر، یعنی کلاس‌ها پشتیبانی می‌کند. تا اینجا متوجه شده‌ایم که یک کلاس می‌تواند حاوی اعضای خصوصی، محافظت شده یا عمومی ‌باشد. به صورت پیش‌فرض، همه‌ی آیتم‌های تعریف شده در یک &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-data-encapsulation/">محصورسازی داده (Data Encapsulation) در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-data-encapsulation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اورلود عملگر تخصیص در ++C</title>
		<link>https://melec.ir/assignment-operators-overloading/</link>
					<comments>https://melec.ir/assignment-operators-overloading/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 13:24:57 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[++Overloading in C]]></category>
		<category><![CDATA[اورلود عملگر تخصیص در ++C]]></category>
		<category><![CDATA[++Assignment Operators Overloading in C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31236</guid>

					<description><![CDATA[<p>می‌توان عملگر تخصیص (=) را همانند دیگر عملگرها اورلود کرد و همانند سازنده کپی (copy constructor) می‌توان از آن برای ایجاد یک شی جدید استفاده کرد. مثال زیر نحوه اورلود کردن عملگر تخصیص را نشان می‌دهد. #include &#60;iostream&#62; using namespace std; class Distance { private: int feet; // 0 to infinite int inches; // 0 to 12 public: // required constructors Distance() { feet = 0; inches = 0; } Distance(int f, int i) { feet = f; inches = i; } void operator = (const Distance &#38;D ) { feet = D.feet; inches = D.inches; } // method to display distance void displayDistance() { cout &#60;&#60; "F: " &#60;&#60; feet &#60;&#60; " I:" &#60;&#60; inches &#60;&#60; endl; } }; int main() { Distance D1(11, 10), D2(5, 11); cout &#60;&#60; "First Distance : "; D1.displayDistance(); cout &#60;&#60; "Second Distance :"; D2.displayDistance(); // use assignment operator D1 = D2; cout &#60;&#60; &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/assignment-operators-overloading/">اورلود عملگر تخصیص در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/assignment-operators-overloading/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>توابع عضو کلاس در ++C</title>
		<link>https://melec.ir/cpp-class-member-functions/</link>
					<comments>https://melec.ir/cpp-class-member-functions/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 12:46:49 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[C++ Class Member Functions]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرا]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[توابع ++C]]></category>
		<category><![CDATA[C++ Class]]></category>
		<category><![CDATA[توابع عضو کلاس در ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31146</guid>

					<description><![CDATA[<p>یک تابع عضو کلاس، تابعی است که تعریف یا نمونه اولیه‌اش درون تعریف کلاس قرار دارد. این تابع در اشیا عضو آن کلاس به کار رفته و به همه اعضای آن شی دسترسی دارد. اجازه دهید از کلاسی که پیش از این تعریف کردیم اینجا نیز بهره بگیریم و به جای دسترسی مستقیم به عناصر آن، با استفاده از تابع عضو آنها را در اختیار بگیریم. class Box { public: double length; // Length of a box double breadth; // Breadth of a box double height; // Height of a box double getVolume(void);// Returns box volume }; توابع عضو را می‌توان درون تعریف کلاس، تعریف کرد و یا با استفاده عملگر وضوح دامنه (:)(scope resolution operator) آنها را جداگانه تعریف کرد. تعریف یک تابع عضو درون تعریف کلاس باعث می‌شود که تابع به صورت inline اعلان شود، حتی اگر مشخصه inline صراحتاً استفاده نشود. بنابراین، می‌توان تابع ()Volume را به &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-class-member-functions/">توابع عضو کلاس در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-class-member-functions/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>مدیریت استثناها در ++C یا Exception Handling</title>
		<link>https://melec.ir/cpp-exceptions-handling/</link>
					<comments>https://melec.ir/cpp-exceptions-handling/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 11:45:14 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[استثناها در ++C]]></category>
		<category><![CDATA[کنترل استثناها در ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[پردازش استثناها در ++C]]></category>
		<category><![CDATA[برنامه نویسی شی گرا در ++C]]></category>
		<category><![CDATA[انواع خطا در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[خطایابی در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[C++ Exception Handling]]></category>
		<category><![CDATA[مدیریت استثناها در ++C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31292</guid>

					<description><![CDATA[<p>در این جلسه به بررسی مدیریت استثناها در ++C یا Exception Handling می‌پردازیم. یک استثنا حالتی غیرطبیعی است که ممکن است در حین اجرای یک برنامه رخ دهد. یک استثنا در ++C پاسخی است که برای یک وضعیت ویژه پیش آمده حین اجرای برنامه ، مانند تقسیم بر صفر، تدارک دیده شده است. استثناها راهی برای انتقال کنترل برنامه از یک بخش به بخش دیگر برنامه فراهم می‌کنند. استثنا در ++C با سه کلید واژه ساخته می‌شود: try ،catch و throw. Thorw: یک برنامه هنگام رخ دادن مشکل، یک استثنا پرتاب (throw) می‌کند. این کار با استفاده از کلید واژه throw انجام می‌شود. Catch: در جایی که قرار است مشکل پیش آمده مدیریت شود، با استفاده از یک کنترل کننده استثنا (exception handler)، یک استثنا گرفته می‌شود. Try: بلوک try بلوک کدی، که ممکن است استثنای مشخصی در آن رخ دهد را شناسایی می‌کند. به دنبال این بلوک یک یا &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-exceptions-handling/">مدیریت استثناها در ++C یا Exception Handling</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-exceptions-handling/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>فایل‌ها و استریم‌ها در ++C</title>
		<link>https://melec.ir/cpp-files-streams/</link>
					<comments>https://melec.ir/cpp-files-streams/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 11:41:29 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[C++ streams]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[استریم‌ها در ++C]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرایی]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<category><![CDATA[زبان برنامه‌نویسی ++C]]></category>
		<category><![CDATA[فایل ها در ++C]]></category>
		<category><![CDATA[C++ files]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31284</guid>

					<description><![CDATA[<p>تا اینجا از کتابخانه‌ی استاندارد iostream استفاده می‌کردیم، که متدهای cin و cout را به ترتیب برای خواندن از ورودی استاندارد و نوشتن در خروجی استاندارد به کار می‌برد. این آموزش به شما نحوه خواندن و نوشتن در فایل‌ها را نشان خواهد داد. برای اینکار به یک کتابخانه استاندارد از ++C به نام fstream نیاز داریم که سه نوع داده جدید تعریف می‌کند. ردیف نوع داده و توصیف آن 1 ofstream این نوع داده استریم فایل خروجی را معرفی می‌کند و برای ساخت فایل‌ها و نوشتن در آنها استفاده می‌شود. 2 ifstream این نوع داده  استریم فایل ورودی را معرفی کرده و برای خواندن اطلاعات از فایل‌ها استفاده می‌شود. 3 fstream این نوع داده استریم فایل عمومی ‌را معرفی می‌کند و قابلیت‌های ofstream و ifstream را همزمان پشتیبانی می‌کند، یعنی می‌تواند فایل ایجاد کرده، اطلاعات در فایل‌ها بنویسد و از آنها اطلاعات بخواند. برای پردازش فایل‌ها در ++C، باید هدرفایل‌های &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-files-streams/">فایل‌ها و استریم‌ها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-files-streams/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اینترفیس‌ها در ++C (کلاس‌های انتزاعی)</title>
		<link>https://melec.ir/cpp-interfaces/</link>
					<comments>https://melec.ir/cpp-interfaces/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 11:35:14 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[کلاس‌ها در ++C]]></category>
		<category><![CDATA[شی‌گرایی در ++C]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرایی]]></category>
		<category><![CDATA[C++ Class]]></category>
		<category><![CDATA[آموزش ابتدایی ++C]]></category>
		<category><![CDATA[اینترفیس]]></category>
		<category><![CDATA[زبان برنامه‌نویسی ++C]]></category>
		<category><![CDATA[اینترفیس‌ها در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[++Interfaces in C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[کلاس انتزاعی در ++C]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31277</guid>

					<description><![CDATA[<p>یک اینترفیس (interface) رفتار یا قابلیت‌های یک کلاس ++C را بدون درنظرگرفتن هیچ نوع پیاده‌سازی برای آن توصیف می‌کند. اینترفیس‌های ++C با استفاده از کلاس‌های انتزاعی (abstract class) پیاده می‌شوند. این کلاس‌های انتزاعی را نباید با مفهوم ‌چکیده‌سازی که برای جداسازی جزئیات پیاده‌سازی از داده‌ها به کار رفت اشتباه بگیریم. یک کلاس را می‌توان با اعلان حداقل یک تابع مجازی محض در آن، انتزاعی کرد. یک تابع مجازی با قرادادن «0=» در هنگام اعلان آن مشخص می‌شود. class Box { public: // pure virtual function virtual double getVolume() = 0; private: double length; // Length of a box double breadth; // Breadth of a box double height; // Height of a box }; هدف از ایجاد کلاس انتزاعی (معمولاً با ABC مشخص می‌شود)، ایجاد یک کلاس پایه مناسب است تا دیگر کلاس‌ها از آن ارث ببرند. نمی‌توان از کلاس‌های انتزاعی شی نمونه گرفت و تنها به عنوان اینترفیس عمل می‌کنند. &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-interfaces/">اینترفیس‌ها در ++C (کلاس‌های انتزاعی)</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-interfaces/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>انتزاع داده (Data Abstraction) در ++C</title>
		<link>https://melec.ir/cpp-data-abstraction/</link>
					<comments>https://melec.ir/cpp-data-abstraction/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 11:29:57 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[چکیده‌سازی داده در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[چکیده‌سازی]]></category>
		<category><![CDATA[برنامه‌نویسی]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[کلاس‌ها در ++C]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرایی]]></category>
		<category><![CDATA[آموزش ابتدایی ++C]]></category>
		<category><![CDATA[زبان برنامه‌نویسی ++C]]></category>
		<category><![CDATA[++Data Abstraction in C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31266</guid>

					<description><![CDATA[<p>منظور از چکیده‌سازی داده فراهم کردن حداقل اطلاعات برای دنیای خارج و مخفی‌سازی جزئیات پس زمینه است، یعنی اطلاعات مورد نیاز بدون ارائه جزئیات نمایش داده می‌شود. چکیده‌سازی داده یک تکنیک برنامه‌نویسی و طراحی است که مبتنی بر جداسازی رابط میانجی (interface) از پیاده‌سازی (implementation) می‌باشد. اجازه دهید با یک مثال از زندگی واقعی ادامه دهیم، یک تلویزیون را تصور کنید که می‌توان آن را روشن یا خاموش کرد، کانال را عوض کرد، صدا را تنظیم کرده و اجزای خارجی مانند بلندگو، VCR و پخش کننده DVD را به آن متصل کرد، اما شما از جزئیات درونی آن هیچ اطلاعی ندارید، یعنی اطلاع ندارید که چگونه سیگنال‌ها را از کابل یا هوا دریافت کرده، چگونه این سیگنال‌ها را منتقل می‌کند و در نهایت بر روی صفحه نمایش می‌دهد. بنابراین، می‌توان گفت که تلویزیون به وضوح پیاده‌سازی داخلی‌اش را از رابط خروجی‌اش جدا کرده و شما قادر هستید از رابط آن &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-data-abstraction/">انتزاع داده (Data Abstraction) در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-data-abstraction/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>چندریختی یا Polymorphism در ++C</title>
		<link>https://melec.ir/cpp-polymorphism/</link>
					<comments>https://melec.ir/cpp-polymorphism/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 11:20:11 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<category><![CDATA[C++ Functions]]></category>
		<category><![CDATA[چندریختی در ++C]]></category>
		<category><![CDATA[Polymorphism در ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[مفهوم چند ریختی در ++C]]></category>
		<category><![CDATA[برنامه نویسی شی گرا در ++C]]></category>
		<category><![CDATA[مفهوم چند ریختی در سی پلاس پلاس]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[مثال چند ریختی در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31261</guid>

					<description><![CDATA[<p>یک موضوع مهم در برنامه نویسی Polymorphism است و در این جلسه ما به بررسی  چندریختی یا Polymorphism در ++C خواهیم پرداخت. واژه چندریختی به معنی داشتن چندین صورت است. معمولاً، چندریختی در شرایطی اتفاق می‌افتد که زنجیره‌ای از کلاس‌ها از طریق وراثت به هم مربوط شده‌اند. چندریختی در ++C یعنی اینکه  فراخوانی یک تابع عضو، بسته به نوع شی فراخواننده آن، می‌تواند منجر به اجرای توابع مختلفی شود. مثال زیر را درنظر بگیرید که در آن دو کلاس از یک کلاس پایه مشتق شده‌اند. #include &#60;iostream&#62; using namespace std; class Shape { protected: int width, height; public: Shape( int a = 0, int b = 0){ width = a; height = b; } int area() { cout &#60;&#60; "Parent class area :" &#60;&#60;endl; return 0; } }; class Rectangle: public Shape { public: Rectangle( int a = 0, int b = 0):Shape(a, b) { } int area () { &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-polymorphism/">چندریختی یا Polymorphism در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-polymorphism/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اورلود کردن عملگر فراخوانی تابع () در ++C</title>
		<link>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d9%81%d8%b1%d8%a7%d8%ae%d9%88%d8%a7%d9%86%db%8c-%d8%aa%d8%a7%d8%a8%d8%b9-%d8%af%d8%b1-cpp/</link>
					<comments>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d9%81%d8%b1%d8%a7%d8%ae%d9%88%d8%a7%d9%86%db%8c-%d8%aa%d8%a7%d8%a8%d8%b9-%d8%af%d8%b1-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 07:28:42 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[C++ operator]]></category>
		<category><![CDATA[++Overloading in C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[++Call Operator () Overloading in C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[اورلود کردن عملگر فراخوانی تابع () در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[Overload عملگر ++C]]></category>
		<category><![CDATA[Overload کردن عملگر در ++C]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[اورلود عملگرها در ++C]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<category><![CDATA[C++ Functions]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31242</guid>

					<description><![CDATA[<p>عملگر فراخوانی تابع () را می‌توان برای اشیا آن کلاس اورلود کرد. با اورلود کردن عملگر ()، راه جدیدی برای فراخوانی تابع ایجاد نمی‌کنید، بلکه یک تابع عملگر ایجاد خواهید کرد که می‌توان تعداد دلخواهی پارامتر به آن ارسال کرد. مثال زیر نحوه اورلود کردن عملگر فراخوانی () را نشان می‌دهد. #include &#60;iostream&#62; using namespace std; class Distance { private: int feet; // 0 to infinite int inches; // 0 to 12 public: // required constructors Distance() { feet = 0; inches = 0; } Distance(int f, int i) { feet = f; inches = i; } // overload function call Distance operator()(int a, int b, int c) { Distance D; // just put random calculation D.feet = a + c + 10; D.inches = b + c + 100 ; return D; } // method to display distance void displayDistance() { cout &#60;&#60; "F: " &#60;&#60; feet &#60;&#60; " &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d9%81%d8%b1%d8%a7%d8%ae%d9%88%d8%a7%d9%86%db%8c-%d8%aa%d8%a7%d8%a8%d8%b9-%d8%af%d8%b1-cpp/">اورلود کردن عملگر فراخوانی تابع () در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d9%81%d8%b1%d8%a7%d8%ae%d9%88%d8%a7%d9%86%db%8c-%d8%aa%d8%a7%d8%a8%d8%b9-%d8%af%d8%b1-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اورلود کردن عملگر ایندکس در ++C</title>
		<link>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%db%8c%d9%86%d8%af%da%a9%d8%b3-%d8%af%d8%b1-cpp/</link>
					<comments>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%db%8c%d9%86%d8%af%da%a9%d8%b3-%d8%af%d8%b1-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 07:28:12 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[انواع عملگرها در ++C]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[اورلود عملگرها در ++C]]></category>
		<category><![CDATA[C++ Functions]]></category>
		<category><![CDATA[C++ operator]]></category>
		<category><![CDATA[++Overloading in C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[Overload عملگر ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[Overload کردن عملگر در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[++Subscripting [] Operator Overloading in C]]></category>
		<category><![CDATA[اورلود کردن عملگر ایندکس در ++C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31246</guid>

					<description><![CDATA[<p>عملگر ایندکس معمولاً برای دسترسی به عناصر یک آرایه استفاده می‌شود. این عملگر را می‌توان برای بهبود کارایی آرایه‌های ++C اورلود کرد. مثال زیر نحوه اورلود این عملگر را نشان می‌دهد. #include &#60;iostream&#62; using namespace std; const int SIZE = 10; class safearay { private: int arr[SIZE]; public: safearay() { register int i; for(i = 0; i &#60; SIZE; i++) { arr[i] = i; } } int &#38;operator[](int i) { if( i &#62; SIZE ) { cout &#60;&#60; "Index out of bounds" &#60;&#60;endl; // return first element. return arr[0]; } return arr[i]; } }; int main() { safearay A; cout &#60;&#60; "Value of A[2] : " &#60;&#60; A[2] &#60;&#60;endl; cout &#60;&#60; "Value of A[5] : " &#60;&#60; A[5]&#60;&#60;endl; cout &#60;&#60; "Value of A[12] : " &#60;&#60; A[12]&#60;&#60;endl; return 0; } خروجی زیر از اجرای کد فوق حاصل شده است. Value of A[2] : 2 Value of A[5] : 5 Index &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%db%8c%d9%86%d8%af%da%a9%d8%b3-%d8%af%d8%b1-cpp/">اورلود کردن عملگر ایندکس در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%db%8c%d9%86%d8%af%da%a9%d8%b3-%d8%af%d8%b1-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اورلود کردن عملگر دسترسی کلاس (-&gt;)  در ++C</title>
		<link>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-%e2%80%92cpp/</link>
					<comments>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-%e2%80%92cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 30 Jul 2020 07:26:45 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[عملگرها در ++C]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[Overload عملگر ++C]]></category>
		<category><![CDATA[Overload کردن عملگر در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[Overload عملگر دسترسی کلاس در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[Class Member Access Operator]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[اورلود عملگرها در ++C]]></category>
		<category><![CDATA[آموزش ++C از مبتدی]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31249</guid>

					<description><![CDATA[<p>عملگر دسترسی کلاس (&#60;‒­­) را می‌توان با احتیاط بیشتر اورلود کرد. این عملگر تعریف می‌شود تا به کلاس، رفتاری شبیه یک اشاره‌گر اعطا کند. عملگر &#60;‒ باید یک تابع عضو باشد. در صورت استفاده، نوع داده بازگشتی آن باید اشاره‌گری به یک شی از همان کلاسی باشد که عملگر به آن اشاره می‌کند. عملگر &#60;‒ اغلب همراه با عملگر درفرنس اشاره‌گر (pointer-dereference) * ، برای پیاده سازی «اشاره‌گرهای هوشمند» (smart pointers) به کار می‌رود. این اشاره‌گرها اشیایی هستند که همانند اشیا معمولی رفتار می‌کنند با این تفاوت که هنگام دسترسی به یک شی از طریق آنها، عملیات دیگری نیز انجام می‌گیرد، مانند حذف خودکار شی هنگام تخریب اشاره‌گر یا هنگامی‌ که اشاره‌گر به شی دیگر منتقل می‌شود. عملگر درفرنس &#60;‒ را می‌توان به صورت یک عملگر یگانی پسوندی (postfix) تعریف کرد. یعنی، با داشتن کلاس. class Ptr { //... X * operator-&#62;(); }; از اشیا کلاس Ptr می‌توان برای دسترسی &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-%e2%80%92cpp/">اورلود کردن عملگر دسترسی کلاس (-&gt;)  در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af-%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-%e2%80%92cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اشاره‌گر this در ++C</title>
		<link>https://melec.ir/%d8%a7%d8%b4%d8%a7%d8%b1%d9%87%e2%80%8c%da%af%d8%b1-this-%d8%af%d8%b1-c/</link>
					<comments>https://melec.ir/%d8%a7%d8%b4%d8%a7%d8%b1%d9%87%e2%80%8c%da%af%d8%b1-this-%d8%af%d8%b1-c/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 23 Jul 2020 06:40:38 +0000</pubDate>
				<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[تابع های ++C]]></category>
		<category><![CDATA[توابع ++C]]></category>
		<category><![CDATA[آموزش ابتدایی ++C]]></category>
		<category><![CDATA[C++ this Pointer]]></category>
		<category><![CDATA[اشاره‌گر this در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31176</guid>

					<description><![CDATA[<p>در این جلسه به بررسی اشاره‌گر this در ++C میپردازیم. هر شی در ++C از طریق یک اشاره‌گر مهم به نام this، به آدرس خودش دسترسی دارد. اشاره‌گر this یک پارامتر ضمنی برای همه توابع عضو شی می‌باشد. بنابراین، درون یک تابع عضو، از this برای اشاره  به شی می‌توان استفاده کرد. توابع دوست، اشاره‌گر this ندارند، زیرا این توابع، عضو کلاس محسوب نمی‌شوند، تنها توابع عضو هستند که دارای اشاره‌گر this می‌باشند. مثال زیر را برای درک بهتر مفهوم اشاره‌گر this مشاهده کنید. #include &#60;iostream&#62; using namespace std; class Box { public: // Constructor definition Box(double l = 2.0, double b = 2.0, double h = 2.0) { cout &#60;&#60;"Constructor called." &#60;&#60; endl; length = l; breadth = b; height = h; } double Volume() { return length * breadth * height; } int compare(Box box) { return this-&#62;Volume() &#62; box.Volume(); } private: double length; // Length of a &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a7%d8%b4%d8%a7%d8%b1%d9%87%e2%80%8c%da%af%d8%b1-this-%d8%af%d8%b1-c/">اشاره‌گر this در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a7%d8%b4%d8%a7%d8%b1%d9%87%e2%80%8c%da%af%d8%b1-this-%d8%af%d8%b1-c/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اورلودکردن عملگر افزایش (++) و عملگر کاهش (- -)</title>
		<link>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%d9%81%d8%b2%d8%a7%db%8c%d8%b4-%d9%88-%da%a9%d8%a7%d9%87%d8%b4/</link>
					<comments>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%d9%81%d8%b2%d8%a7%db%8c%d8%b4-%d9%88-%da%a9%d8%a7%d9%87%d8%b4/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Mon, 20 Jul 2020 06:40:49 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[C++ Overloading]]></category>
		<category><![CDATA[++ Overloading Increment]]></category>
		<category><![CDATA[- - Overloading Decrement]]></category>
		<category><![CDATA[اورلود کردن عملگر افزایش در ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[اورلود کردن عملگر کاهش در ++C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31229</guid>

					<description><![CDATA[<p>عملگرهای افزایش (++) و کاهش (- -) دو عملگر یگانی مهم در ++C هستند. مثال زیر نحوه اورلود کردن عملگر افزایش (++)، در حالت پیشوند و پسوند را نشان می‌دهد. به طریق مشابه، می‌توان عملگر کاهش (- -) را نیز اورلود کرد. #include &#60;iostream&#62; using namespace std; class Time { private: int hours; // 0 to 23 int minutes; // 0 to 59 public: // required constructors Time() { hours = 0; minutes = 0; } Time(int h, int m) { hours = h; minutes = m; } // method to display time void displayTime() { cout &#60;&#60; "H: " &#60;&#60; hours &#60;&#60; " M:" &#60;&#60; minutes &#60;&#60;endl; } // overloaded prefix ++ operator Time operator++ () { ++minutes; // increment this object if(minutes &#62;= 60) { ++hours; minutes -= 60; } return Time(hours, minutes); } // overloaded postfix ++ operator Time operator++( int ) { // save the orignal &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%d9%81%d8%b2%d8%a7%db%8c%d8%b4-%d9%88-%da%a9%d8%a7%d9%87%d8%b4/">اورلودکردن عملگر افزایش (++) و عملگر کاهش (- -)</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a7%d9%88%d8%b1%d9%84%d9%88%d8%af%da%a9%d8%b1%d8%af%d9%86-%d8%b9%d9%85%d9%84%da%af%d8%b1-%d8%a7%d9%81%d8%b2%d8%a7%db%8c%d8%b4-%d9%88-%da%a9%d8%a7%d9%87%d8%b4/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>ویرایشگر سطح دسترسی کلاس در ++C</title>
		<link>https://melec.ir/%d9%88%db%8c%d8%b1%d8%a7%db%8c%d8%b4%da%af%d8%b1-%d8%b3%d8%b7%d8%ad-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-cpp/</link>
					<comments>https://melec.ir/%d9%88%db%8c%d8%b1%d8%a7%db%8c%d8%b4%da%af%d8%b1-%d8%b3%d8%b7%d8%ad-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Fri, 17 Jul 2020 06:40:55 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[توابع ++C]]></category>
		<category><![CDATA[کلاس‌ها در ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرایی]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرا]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[ویرایشگر سطح دسترسی کلاس در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31151</guid>

					<description><![CDATA[<p>مخفی‌سازی داده یکی از مهم‌ترین ویژگی‌های برنامه‌نویسی شی‌گرا می‌باشد که توابع برنامه را از دسترسی مستقیم به عناصر داخلی یک کلاس منع می‌کند. این منع دسترسی بوسیله بخش‌های برچسب دار درون بدنه کلاس انجام می‌گیرد. این برچسب‌ها public، private و protected می‌باشند. کلیدواژه‌های public، private و protected مشخص کننده سطح دسترسی (access specifiers) نام دارند. یک کلاس می‌تواند شامل چندین بخش public، protected و private باشد. هربخش، تا زمان رسیدن برچسب بخش بعدی یا رسیدن به آکلاد بسته بدنه کلاس ادامه دارد. سطح دسترسی پیش فرض برای کلاس و اعضای آن private می‌باشد. class Base { public: // public members go here protected: // protected members go here private: // private members go here }; عضوهای public یک عضو public از هرجایی از برنامه خارج از کلاس قابل دسترسی می‌باشد. همانند مثال زیر، می‌توان متغیرهای عمومی ‌را بدون استفاده از هیچ تابع عضوی تغییر داد. #include &#60;iostream&#62; using namespace std; &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d9%88%db%8c%d8%b1%d8%a7%db%8c%d8%b4%da%af%d8%b1-%d8%b3%d8%b7%d8%ad-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-cpp/">ویرایشگر سطح دسترسی کلاس در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d9%88%db%8c%d8%b1%d8%a7%db%8c%d8%b4%da%af%d8%b1-%d8%b3%d8%b7%d8%ad-%d8%af%d8%b3%d8%aa%d8%b1%d8%b3%db%8c-%da%a9%d9%84%d8%a7%d8%b3-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>وراثت در ++C</title>
		<link>https://melec.ir/cpp-inheritance/</link>
					<comments>https://melec.ir/cpp-inheritance/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Tue, 14 Jul 2020 06:40:04 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[وراثت در ++C]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[وراثت محافظت شده در ++C]]></category>
		<category><![CDATA[وراثت عمومی در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[وراثت خصوصی در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[وراثت چندگانه در ++C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[Public Inheritance]]></category>
		<category><![CDATA[Protected Inheritance]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[Private Inheritance]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[Multiple Inheritance]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[برنامه‌نویسی شی‌گرایی]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31135</guid>

					<description><![CDATA[<p>در این جلسه از آموزش ++C به بررسی وراثت در ++C می پردازیم. یکی از مهم‌ترین مفاهیم برنامه‌نویسی شی‌گرا وراثت (inheritance) می‌باشد. وراثت اجازه می‌دهد که یک کلاس را برحسب یک کلاس دیگر تعریف کنیم، موجب آسان‌تر شدن ساخت و نگه‌داری یک برنامه می‌گردد. این مفهوم همچنین موجب استفاده مجدد از کدها و پیاده‌‌سازی سریع‌تر آنها می‌شود. برنامه‌نویس می‌تواند هنگام نوشتن یک کلاس، به جای نوشتن داده و توابع عضو جدید، شرایطی اتخاد کند که کلاس جدید، اعضای یک کلاس از پیش موجود را به ارث ببرد. این کلاس از پیش موجود کلاس پایه (base class) نامیده می‌شود، و کلاس جدید، کلاس مشتق شده (derived class) نامیده می‌شود. ایده وراثت یک رابطه از نوع «یک &#8230; است» (is a) می‌باشد. برای مثال، پستاندارد یک حیوان است، سگ یک پستاندار است بنابراین سگ همچنین یک حیوان است  و الی آخر. کلاس پایه و مشتق شده یک کلاس ممکن است از بیش &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-inheritance/">وراثت در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-inheritance/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>ساختارداده‌ها در ++C</title>
		<link>https://melec.ir/cpp-data-structures/</link>
					<comments>https://melec.ir/cpp-data-structures/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Sun, 12 Jul 2020 06:40:45 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[typedef در ++C]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[اشاره‌گرها در ++C]]></category>
		<category><![CDATA[C++ Pointers]]></category>
		<category><![CDATA[C++ Pointer]]></category>
		<category><![CDATA[C++ Data Structures]]></category>
		<category><![CDATA[ساختارداده‌ها در ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[++Structure Tag in C]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31122</guid>

					<description><![CDATA[<p>در این جلسه از آموزش زبان ++C به بررسی ساختارداده‌ها در ++C می پردازیم. ++C با تعریف آرایه‌ها به شما این اجازه را می‌داد که چندین داده هم نوع را یک جا ترکیب کنید، اما ساختار (Structure) نوع داده‌ای تعریف شده توسط کاربر است که اجازه می‌دهد که داده‌هایی از انواع مختلف را باهم ترکیب کنید. مثلاً اگر بخواهید آمار کتابهای موجود در کتابخانه‌تان را داشته باشید، ساختارها می‌توانند بیان کننده یک رکورد باشند. مثلاً ممکن است بخواهید ویژگی‌های زیر از هر کتاب را ذخیره کنید. عنوان نویسنده موضوع شناسه کتاب تعریف یک ساختار برای تعریف یک ساختار، باید از دستور struct استفاده کنید. این دستور یک نوع داده جدید با بیش از یک عضو را در برنامه تعریف می‌کند. فرمت دستور struct به این صورت است: struct [structure tag] { member definition; member definition; ... member definition; } [one or more structure variables]; برچسب ساختار (Structure Tag) اختیاری بوده &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-data-structures/">ساختارداده‌ها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-data-structures/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>تاریخ و ساعت در ++C</title>
		<link>https://melec.ir/cpp-date-time/</link>
					<comments>https://melec.ir/cpp-date-time/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Fri, 03 Jul 2020 06:40:11 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[C++ Date and Time]]></category>
		<category><![CDATA[ساختار tm در ++C]]></category>
		<category><![CDATA[تاریخ و ساعت در ++C]]></category>
		<category><![CDATA[توابع ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31106</guid>

					<description><![CDATA[<p>در این جلسه به بررسی تاریخ و ساعت در ++C می پردازیم. کتابخانه استاندارد ++C، نوع داده مناسبی برای تاریخ و ساعت تهیه نکرده است. ++C ساختارها (struct) و توابع مربوط به تاریخ و ساعتی که در زبان C پیاده شده است را اتخاذ کرده است. برای دسترسی به ساختارها و توابع مربوط به تاریخ و ساعت، باید هدرفایل &#60;ctime&#62; را به برنامه ++C ضمیمه کنید. چهار نوع داده مرتبط وجود دارد: clock_t، time_t، size_t و tm. clock_t، time_t، size_t برای بیان تاریخ و ساعت سیستم به شکل عدد صحیح استفاده می‌شود. ساختار نوع tm تاریخ و ساعت را به شکل ساختار C با عناصر زیر ذخیره می‌کند: struct tm { int tm_sec; // seconds of minutes from 0 to 61 int tm_min; // minutes of hour from 0 to 59 int tm_hour; // hours of day from 0 to 24 int tm_mday; // day of month from 1 to &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-date-time/">تاریخ و ساعت در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-date-time/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>رفرنس‌ها در ++C</title>
		<link>https://melec.ir/cpp-references/</link>
					<comments>https://melec.ir/cpp-references/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 02 Jul 2020 06:40:59 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[اشاره‌گرها در ++C]]></category>
		<category><![CDATA[اشاره گرها]]></category>
		<category><![CDATA[اشاره‌گر ++C]]></category>
		<category><![CDATA[C++ Pointer]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[رفرنس‌ها در ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[C++ References]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[فراخوانی با ارجاع]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[تابع های ++C]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31099</guid>

					<description><![CDATA[<p>در این جلسه به بررسی رفرنس‌ها در ++C می پردازیم. یک متغیر رفرنس (Reference Variable) همانند یک نام مستعار، در واقع نامی‌ دیگر برای متغیر از پیش تعریف شده است. از زمانی که یک رفرنس به یک متغیر آغاز می‌شود، می‌توان از نام آن متغیر یا نام رفرنس برای ارجاع به آن متغیر استفاده کرد. رفرنس‌ها در برابر اشاره‌گرها بیشتر وقت‌ها رفرنس‌ها با اشاره‌گرها اشتباه گرفته می‌شوند اما سه تفاوت اساسی بین رفرنس‌ها و اشاره‌گرها وجود دارد: رفرنس‌های NULL نباید وجود داشته باشد. باید همیشه این فرض را داشته باشید که یک رفرنس به بخشی از حافظه متصل است. زمانی‌که یک رفرنس به یک شی آغاز می‌شود، نمی‌توان آن را به شی دیگری تغییر داد. اشاره‌گرها را می‌توان در هر زمان به شی دیگر تغییر داد. یک رفرنس را باید هنگام ساختن مقداردهی اولیه کرد. اشاره‌گرها را در هر زمانی می‌توان مقداردهی اولیه کرد. ایجاد رفرنس در ++C نام یک &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-references/">رفرنس‌ها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-references/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اشاره‌گرها در ++C</title>
		<link>https://melec.ir/cpp-pointers/</link>
					<comments>https://melec.ir/cpp-pointers/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Wed, 01 Jul 2020 06:40:46 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[اشاره‌گرها در ++C]]></category>
		<category><![CDATA[اشاره‌گر ++C]]></category>
		<category><![CDATA[C++ Pointers]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[C++ Pointer]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31068</guid>

					<description><![CDATA[<p>آموختن اشاره‌گرهای ++C  آسان و جذاب است. برخی کارها در ++C را می‌توان با استفاده از اشاره‌گرها آسان‌تر انجام داد، و برخی دیگر از کارها در ++C ، مانند اختصاص حافظه پویا (دینامیک) را نمی‌توان بدون وجود اشاره‌گرها به انجام رساند. همانطور که می‌دانید هر متغیر مکانی از حافظه است و هر مکان حافظه دارای آدرس تعریف شده‌ای می‌باشد که با استفاده از عملگر &#38; می‌توان به آن دسترسی داشت. در مثال زیر آدرس یک متغیر تعریف شده چاپ خواهد شد. #include &#60;iostream&#62; using namespace std; int main () { int var1; char var2[10]; cout &#60;&#60; "Address of var1 variable: "; cout &#60;&#60; &#38;var1 &#60;&#60; endl; cout &#60;&#60; "Address of var2 variable: "; cout &#60;&#60; &#38;var2 &#60;&#60; endl; return 0; } با اجرای کد فوق، خروجی زیر تولید می‌شود. Address of var1 variable: 0xbfebd5c0 Address of var2 variable: 0xbfebd5b6 اشاره‌گر چیست یک اشاره‌گر(pointer) متغیری است که مقدار آن آدرس یک &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-pointers/">اشاره‌گرها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-pointers/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>رشته‌ها در ++C</title>
		<link>https://melec.ir/cpp-strings/</link>
					<comments>https://melec.ir/cpp-strings/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Tue, 30 Jun 2020 06:40:14 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش رایگان ++c]]></category>
		<category><![CDATA[رشته‌ها در ++C]]></category>
		<category><![CDATA[مفاهیم ++‌C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31062</guid>

					<description><![CDATA[<p>++C دو نوع روش برای بیان رشته‌ها دارد: رشته با کارکترهای سبک زبان C کلاس string معرفی شده در ++C استاندارد رشته با کارکترهای سبک زبان C این نوع رشته از زبان C اتخاذ شده و ++C کماکان به پشتیبانی از آن ادامه می‌دهد. این نوع رشته درواقع یک آرایه یک بعدی از کارکترهاست که به کارکتر ’null ‘\0 ختم می‌گردد. بنابراین رشته منتهی به کارکتر null شامل یک سری کارکترهاست که به null ختم می‌شود. دستور زیر یک رشته حاوی واژه Hello را اعلان و مقداردهی می‌کند. برای ذخیره کارکتر null در انتهای آرایه، اندازه آرایه باید یک عدد بیشتر از تعداد کارکترهای واژه Hello باشد. char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'}; اگر قواعد مقداردهی اولیه آرایه را دنبال کنید، باید دستور بالا را به شکل زیر بنویسید. char greeting[] = "Hello"; شکل زیر رشته تعریف شده در C++/C را در حافظه نمایش می‌دهد. در حقیقت &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-strings/">رشته‌ها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-strings/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>اعداد در ++C</title>
		<link>https://melec.ir/cpp-numbers/</link>
					<comments>https://melec.ir/cpp-numbers/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Sun, 28 Jun 2020 06:40:01 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[عملیات ریاضی در ++C]]></category>
		<category><![CDATA[تعریف اعداد در ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[اعداد تصادفی در ++C]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31027</guid>

					<description><![CDATA[<p>در حالت عادی، هنگام کار با اعداد، از نوع داده‌های پایه مانند int، short، long، float، double و &#8230; استفاده می‌کنیم. هنگام صبحت از نوع داده‌های ++C، نوع داده‌های عددی، مقادیر احتمالی و محدوده آنها را توضیح داده‌ایم. تعریف اعداد در ++C در آموزش‌های پیشین اعداد مختلف را تعریف کرده و به آنها پرداختیم، مثال خوب دیگری از اعداد مختلف در ++C را در زیر آورده ایم. #include &#60;iostream&#62; using namespace std; int main () { // number definition: short s; int i; long l; float f; double d; // number assignments; s = 10; i = 1000; l = 1000000; f = 230.47; d = 30949.374; // number printing; cout &#60;&#60; "short s :" &#60;&#60; s &#60;&#60; endl; cout &#60;&#60; "int i :" &#60;&#60; i &#60;&#60; endl; cout &#60;&#60; "long l :" &#60;&#60; l &#60;&#60; endl; cout &#60;&#60; "float f :" &#60;&#60; f &#60;&#60; endl; cout &#60;&#60; "double d &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-numbers/">اعداد در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-numbers/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>توابع در ++C</title>
		<link>https://melec.ir/cpp-functions/</link>
					<comments>https://melec.ir/cpp-functions/#comments</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Sat, 27 Jun 2020 06:40:11 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آرگومان های تابع ++c]]></category>
		<category><![CDATA[توابع در ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[C++ PROGRAMMING]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=31013</guid>

					<description><![CDATA[<p>یک تابع به مجموعه‌ای از دستورات گفته می‌شود که در کنار هم یک وظیفه خاص را انجام می‌دهند. هر برنامه ++C دارای حداقل یک تابع، یعنی تابع ()main می‌باشد. همه برنامه‌ها می‌توانند توابعی اضافه بر تابع main تعریف کنند. می‌توانید کد خود را به چندین تابع تقسیم کنید. اینکه چگونه کد خود را درون چند تابع تقسیم کنید برعهده خود شماست، اما منطقی این است که این کار را به گونه‌ای انجام دهید که هرتابع یک وظیفه مشخص را برعهده داشته باشد. اعلان یک تابع، نام تابع، نوع داده بازگشتی و پارامترهای آن را به کامپایلر معرفی می‌کند. تعریف یک تابع بدنه اصلی تابع را فراهم می‌کند. کتابخانه استاندارد ++C توابع درونی فراوانی برای فراخوانی در برنامه مهیا ساخته است. برای مثال، تابع ()strcat برای چسباندن دو رشته به همدیگر، تابع ()memcpy برای کپی کردن یک مکان از حافظه به مکان دیگر از حافظه و بسیاری توابع دیگر. یک تابع با &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-functions/">توابع در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-functions/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>ساختارهای تصمیم گیری در ++C</title>
		<link>https://melec.ir/%d8%b3%d8%a7%d8%ae%d8%aa%d8%a7%d8%b1%d9%87%d8%a7%db%8c-%d8%aa%d8%b5%d9%85%db%8c%d9%85-%da%af%db%8c%d8%b1%db%8c-%d8%af%d8%b1-cpp/</link>
					<comments>https://melec.ir/%d8%b3%d8%a7%d8%ae%d8%aa%d8%a7%d8%b1%d9%87%d8%a7%db%8c-%d8%aa%d8%b5%d9%85%db%8c%d9%85-%da%af%db%8c%d8%b1%db%8c-%d8%af%d8%b1-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Fri, 26 Jun 2020 06:40:32 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[دستور switch در ++c]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[دستورات if تودرتو در ++c]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[دستورات  switch تودرتو در ++c]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[C++ decision making]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<category><![CDATA[عملگر :? در ++c]]></category>
		<category><![CDATA[دستور if در ++c]]></category>
		<category><![CDATA[دستور if…else در ++c]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=30995</guid>

					<description><![CDATA[<p>در ساختارهای تصمیم گیری (Decision making)، برنامه‌نویس موظف است که یک یا چند شرط را برای ارزیابی و تست برنامه مشخص کند، و همچنین یک یا چند دستور را برای اجرا در صورت درست بودن شرط فراهم کند و در صورت نیاز، دستورات دیگری را برای اجرا در حالت نادرست بودن شرط نیز گردآوری کند. شکل کلی ساختارهای تصمیم گیری متداول در اکثر زبان‌های برنامه‌نویسی در شکل زیر آمده است: زبان برنامه‌نویسی ++C دستورات تصمیم گیری زیر را فراهم آورده است. ردیف دستور و توضیح آن 1 دستور if دستور if شامل یک عبارت بولی و پس از آن یک یا چند دستور است. 2 دستور if…else دستور if را می‌توان همراه با یک دستور else اختیاری استفاده کرد، زمانی که عبارت بولی نادرست باشد،  دستور else اجرا می‌شود. 3 دستور switch دستور switch امکان مقایسه یک متغیر را با لیستی از مقادیر فراهم می‌آورد. 4 دستورات if تودرتو می‌توان &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%b3%d8%a7%d8%ae%d8%aa%d8%a7%d8%b1%d9%87%d8%a7%db%8c-%d8%aa%d8%b5%d9%85%db%8c%d9%85-%da%af%db%8c%d8%b1%db%8c-%d8%af%d8%b1-cpp/">ساختارهای تصمیم گیری در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%b3%d8%a7%d8%ae%d8%aa%d8%a7%d8%b1%d9%87%d8%a7%db%8c-%d8%aa%d8%b5%d9%85%db%8c%d9%85-%da%af%db%8c%d8%b1%db%8c-%d8%af%d8%b1-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>انواع حلقه در ++C</title>
		<link>https://melec.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%ad%d9%84%d9%82%d9%87-%d8%af%d8%b1-cpp/</link>
					<comments>https://melec.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%ad%d9%84%d9%82%d9%87-%d8%af%d8%b1-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 25 Jun 2020 03:42:21 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[حلقه ها در ++c]]></category>
		<category><![CDATA[حلقه do…while]]></category>
		<category><![CDATA[حلقه for در برنامه نویسی]]></category>
		<category><![CDATA[حلقه‌های تودرتو]]></category>
		<category><![CDATA[حلقه بی نهایت در برنامه نویسی]]></category>
		<category><![CDATA[حلقه for]]></category>
		<category><![CDATA[حلقه while]]></category>
		<category><![CDATA[c++ programming language]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=30987</guid>

					<description><![CDATA[<p>گاهی وضعیتی بوجود می‌آید که مجبور هستیم یک بلوک کد را چندین بار اجرا کنیم. در حالت کلی، دستورات به ترتیب اجرا می‌شوند: دستور اول در یک تابع پیش از بقیه دستورات اجرا می‌شود، سپس دستور دوم و الی آخر. زبان‌های برنامه‌نویسی ساختارهای کنترلی برای ما فراهم آورده‌اند تا  مسیرهای اجرایی پیچیده‌تری را پدید بیاوریم. دستورات حلقه، به ما امکان می‌دهند تا یک یا چند دستور را چندین بار اجرا کنیم. شکل عمومی ‌دستور حلقه در بیشتر زبان‌های برنامه‌نویسی به صورت زیر است. زبان برنامه نویسی ++C حلقه‌های زیر را برای شرایط مقتضی گردآوری کرده است: ردیف نوع حلقه و توضیح آن 1 حلقه while یک یا چند دستور را، تا زمانی که شرط برقرار باشد تکرار می‌کند. این حلقه شرط را قبل از اجرای بدنه حلقه بررسی می‌کند. 2 حلقه for یک سلسله از دستورات را به تعداد مشخص اجرا می‌کند. این ساختار قطعه کد مدیریت حلقه را خلاصه &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%ad%d9%84%d9%82%d9%87-%d8%af%d8%b1-cpp/">انواع حلقه در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a7%d9%86%d9%88%d8%a7%d8%b9-%d8%ad%d9%84%d9%82%d9%87-%d8%af%d8%b1-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>عملگرها در ++C</title>
		<link>https://melec.ir/cpp-operators/</link>
					<comments>https://melec.ir/cpp-operators/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Fri, 19 Jun 2020 06:40:10 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[عملگرهای بیتی]]></category>
		<category><![CDATA[Relational Operator]]></category>
		<category><![CDATA[Arithmetic Operator]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[Logical Operator]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[Bitwise Operator]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[Assignment Operator]]></category>
		<category><![CDATA[Misc Operator]]></category>
		<category><![CDATA[عملگرهای حسابی]]></category>
		<category><![CDATA[انواع عملگرها در ++C]]></category>
		<category><![CDATA[عملگرهای رابطه ای]]></category>
		<category><![CDATA[عملگرهای منطقی]]></category>
		<category><![CDATA[عملگرهای تخصیص]]></category>
		<category><![CDATA[آموزش برنامه نویسی]]></category>
		<category><![CDATA[عملگرهای متفرقه]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=30969</guid>

					<description><![CDATA[<p>در این جلسه از آموزش ++C به بررسی عملگرها در ++C خواهیم پرداخت. یک عملگر نمادی است که به کامپایلر اعلام می‌کند تا یک عمل منطقی یا ریاضی مشخص را انجام دهد. ++C منبعی غنی از عملگرهای درونی داشته و انواع عملگر زیر را فراهم آورده است: عملگرهای حسابی عملگرهای رابطه‌ای عملگرهای منطقی عملگرهای بیتی عملگرهای تخصیص عملگرهای متفرقه این بخش عملگرهای حسابی، رابطه‌ای، منطقی، بیتی، تخصیص و دیگر عملگرها را توضیح خواهد داد. عملگرهای حسابی (Arithmetic Operator) ++C از عملگرهای حسابی زیر پشتیبانی می‌کند. فرض کنید متغیر A حاوی مقدار 10 و متغیر B حاوی مقدار 20 باشد، آنگاه: عملگر توصیف مثال + دو عملوند را باهم جمع می‌کند. A + B = 30 &#8211; عملوند دوم را از عملوند اول کم می‌کند. A &#8211; B = -10 * دو عملوند را در هم ضرب می‌کند. A * B = 200 / صورت را بر مخرج تقسیم می‌کند. B &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/cpp-operators/">عملگرها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/cpp-operators/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>دامنه متغیرها در ++C</title>
		<link>https://melec.ir/%d8%af%d8%a7%d9%85%d9%86%d9%87-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7-%d8%af%d8%b1-cpp/</link>
					<comments>https://melec.ir/%d8%af%d8%a7%d9%85%d9%86%d9%87-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7-%d8%af%d8%b1-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Thu, 02 Apr 2020 13:47:01 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[متغیرها در زبان C]]></category>
		<category><![CDATA[آموزش برنامه نویسی C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[متغیرهای محلی]]></category>
		<category><![CDATA[متغیرهای سراسری]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=30172</guid>

					<description><![CDATA[<p>در این جلسه به بررسی دامنه متغیرها در ++C می‌پردازیم. اگر مطالعه نکردید توصیه می‌کنیم اول مقاله انواع متغیر در ++C را مطالعه کنید. دامنه(scope) ناحیه ای از برنامه است و اگر بخواهیم کلی تر صحبت کنیم، سه مکان وجود دارد که متغیرها را می توان در آنجا اعلان کرد: درون یک تابع یا بلوک که متغیرهای محلی(local variable) نامیده می شوند. در تعریف پارامترهای تابع که پارامترهای رسمی(formal parameters) نامیده می شوند. بیرون همه توابع که متغیرهای سراسری(global variable) نامیده می شوند. در فصول بعد با توابع و پارامترهای آنها آشنا خواهیم شد. فعلاً اجازه دهید متغیرهای محلی و سراسری را توضیح دهیم. متغیرهای محلی متغیرهایی که درون یک تابع یا بلوک اعلان می شوند متغیرهای محلی(local variable) نامیده می شوند. این متغیرها تنها توسط دستورات درون یک بلوک یا تابع بکارگرفته می شوند. متغیرهایی محلی برای توابع خارج از خود شناخته شده نیستند. مثال زیر از متغیرهای محلی &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%af%d8%a7%d9%85%d9%86%d9%87-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7-%d8%af%d8%b1-cpp/">دامنه متغیرها در ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%af%d8%a7%d9%85%d9%86%d9%87-%d9%85%d8%aa%d8%ba%db%8c%d8%b1%d9%87%d8%a7-%d8%af%d8%b1-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
		<item>
		<title>آموزش برنامه نویسی ++C</title>
		<link>https://melec.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-cpp/</link>
					<comments>https://melec.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-cpp/#respond</comments>
		
		<dc:creator><![CDATA[احسان پناهی]]></dc:creator>
		<pubDate>Sun, 22 Mar 2020 11:21:43 +0000</pubDate>
				<category><![CDATA[آموزش زبان ++C]]></category>
		<category><![CDATA[آموزش ++C]]></category>
		<category><![CDATA[یادگیری ++C]]></category>
		<category><![CDATA[برنامه نویسی شی گرا در ++C]]></category>
		<category><![CDATA[آموزش c++ رایگان]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ به زبان ساده]]></category>
		<category><![CDATA[آموزش برنامه نویسی c++ از مبتدی تا پیشرفته]]></category>
		<category><![CDATA[آموزش گام به گام برنامه نویسی به زبان ++c]]></category>
		<category><![CDATA[آموزش مقدماتی c++]]></category>
		<category><![CDATA[برنامه نویسی شی گرا]]></category>
		<guid isPermaLink="false">https://melec.ir/?p=29778</guid>

					<description><![CDATA[<p>++C یک زبان برنامه نویسی سطح میانی است که توسط Bjarne Stroustrup در سال 1979 در آزمایشگاه بل توسعه یافت. ++C روی پلتفرم های متنوعی همچون ویندوز، Mac OS و نسخه های مختلف یونیکس(لینوکس، FreeBSD و غیره)  قابل اجرا است. این آموزش دیدگاهی ساده و عملگرایانه برای توضیح مفاهیم ++C برای مهندسین نرم افزار از مبتدی تا پیشرفته درپیش می گیرد. چرا باید برنامه نویسی ++C بیاموزیم؟ ++C یک باید برای دانشجویان و کارمندان حرفه ای است که می خواهند مهندس نرم افزاری چیره دست شوند. برخی از مزایای کلیدی که با آموختن ++C کسب می کنیم را در زیر لیست کرده ایم: برنامه نویسی ++C بینش روشنی از برنامه نویسی شی گرا بدست می دهد. با پیاده سازی جداول مجازی(virtual table) و اشاره گرهای جدول مجازی(virtual table pointer) یا شناسایی نوع پویا(dynamic type identification)، پیاده سازی سطح پایین چندریختی(polymorphism) را خواهید آموخت. ++C بخشی از هر زبان برنامه نویسی &#8230;</p>
<p>برای مشاهده این مطلب بصورت کامل روی لینک زیر کلیک کنید:<br />
<a href="https://melec.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-cpp/">آموزش برنامه نویسی ++C</a></p>
]]></description>
		
					<wfw:commentRss>https://melec.ir/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d8%a8%d8%b1%d9%86%d8%a7%d9%85%d9%87-%d9%86%d9%88%db%8c%d8%b3%db%8c-cpp/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		
		<series:name><![CDATA[cpp programming language]]></series:name>
	</item>
	</channel>
</rss>
