پاورپوینت کامل قالب ها در ++C 36 اسلاید در PowerPoint
توجه : این فایل به صورت فایل power point (پاور پوینت) ارائه میگردد
پاورپوینت کامل قالب ها در ++C 36 اسلاید در PowerPoint دارای ۳۶ اسلاید می باشد و دارای تنظیمات کامل در PowerPoint می باشد و آماده ارائه یا چاپ است
شما با استفاده ازاین پاورپوینت میتوانید یک ارائه بسیارعالی و با شکوهی داشته باشید و همه حاضرین با اشتیاق به مطالب شما گوش خواهند داد.
لطفا نگران مطالب داخل پاورپوینت نباشید، مطالب داخل اسلاید ها بسیار ساده و قابل درک برای شما می باشد، ما عالی بودن این فایل رو تضمین می کنیم.
توجه : در صورت مشاهده بهم ریختگی احتمالی در متون زیر ،دلیل ان کپی کردن این مطالب از داخل فایل می باشد و در فایل اصلی پاورپوینت کامل قالب ها در ++C 36 اسلاید در PowerPoint،به هیچ وجه بهم ریختگی وجود ندارد
بخشی از مطالب داخلی اسلاید ها
پاورپوینت کامل قالب ها در ++C 36 اسلاید در PowerPoint
اسلاید ۴: temp=a;a=b;b=temp;}//****************************int main(){ int i=10,,j=20; double x=10.1,y=23.3; char a=‘x’,b=‘z’; clrscr(); cout<<“original i, j :”<<i<<“,”<<j<<“n”; cout<<“original x, y :”<<x<<“,”<<y<<“n”; cout<<“original a, b :”<<a<<“,”<<b<<“n”; swapArgs(i, j); swapArgs(x,y); swapArgs(a,b); cout<<“Swaped i, j :”<<i<<“,”<<j<<“n”; cout<<“Swaped x, y :”<<x<<“,”<<y<<“n”; cout<<“Swaped a, b :”<<a<<“,”<<b<<“n”; getch(); return 0;}
اسلاید ۵: خروجیOriginal i, j :10 , 20Original x, y:10.1 , 23.3Original a, b 😡 , zSwaped i, j :20 ,10Swaped x,y :23.3 ,10.1Swaped a, b: z , xتحلیل مثال ۱:سطر زیر را در نظر بگیرید:templat <class X> void swapArgs (X &a, X &b) این سطر به کامپایلر دو چیز را می گوید: ۱.قالبی در حال ایجاد شدن است و ۲.یک تعریف کلی اغاز شده است.در اینجا X یک نوع کلی است.پس از بخش templat تابعswapArgs() اعلان شد که از X به عنوان نوع داده هایی که باید با هم جابه جا شوند استفاده کرده است.در تابع main() تابع swapArgs() با استفاده از سه نوع داده مختلف فراخوانی شد: int ,float , char . چون تابع swapArgs() یک تابع کلی است کامپایلر سه نسخه از این تابع را ایجاد می کند: یکی از انها دو مقدار صحیح را جا به جا می کند دومی مقادیر اعشاری و سومی مقادیر کاراکتری را جا به جا می نماید.
اسلاید ۶: نام دیگر تابع کلی (تابعی که با template تعریف می شود) تابع قالب است.تابع swapArgs() را که در مثال دیدید به صورت زیر نیز می توان نوشت:template <class X>Void swapArgs (X &a ,X &b){ X temp; temp=a; a=b; b=temp;} در این صورت دقت داشته باشید که بین خطی که با template شروع شد و خطی که تابع را تعریف کرد هیچ دستور دیگری نمی تواند ظاهر شود.
اسلاید ۷: چند نکته:در دستور template میتوان بیش از یک نوع داده را تعریف کرد.در این صورت باید انها را با کاما از هم جدا کرد.گرچه تابع کلی در صورت نیاز به طور ضمنی خودش را دوباره تعریف میکند(به شکلهای گوناگون در می اید) ولی به طور صریح نیز قابل تعریف مجدد است.در اینصورت این تابع مجددا تعریف شده تابع کلی را نسبت به ان نسخه خاص پنهان می کند.علاوه بر اینکه تابع کلی را میتوان مجددا تعریف کرد خود مشخصات template را نیز می توان مجددا تعریف نمود.برای این کار نسخه دیگری از قالب ایجاد کنید که با تمام انچه که در لیست پارامترها امده است متفاوت باشد.در تابع قالب می توان پارامترهای استاندارد را با پارامترهای کلی تعریف کرد.عملکرد این پارامترهای کلی همانند عملکرد انها در سایر توابع است.توابع کلی می توانند کاربردهای متعددی داشته باشند.اگر تابعی دارای یک الگوریتم کلی باشد میتوانید ان را به صورت تابع قالب در بیاورید.به این ترتیب میتوانید ان را برای هر نوعی از داده ها به کار ببرید. به عنوان مثال مرتب سازی عملی است که برای ان می توان توابع کلی را ایجاد کرد.در بسیاری از الگوریتمهای مرتب سازی روش مرتب سازی برای انواع مختلفی از داده ها یکسان است.در اینجا تابعی به نام bubble() برای مرتب سازی حبابی انواع مختلفی از داده ها می نویسیم:
اسلاید ۸: template <class Type> void bubble(Type *items, const int count){ register int a, b; Type temp; for ( a =1; a <count ; a++) for ( b = count – ۱; b >= a; b– ) if ( items [b – ۱] > items [b] ){ temp = items [b – ۱] ; items [b – ۱] = items [ b ] ; items [ b ] = temp ; } }روش چاپ محتویات ارایه ها به نوع داده هایی که دران وجود دارد بستگی ندارد.بنابراین این عمل با استفاده از توابع قالب به راحتی انجام پذیر است.
اسلاید ۹: کلاس های کلی یا قالب های کلاس:علاوه بر توابع کلی کلاس ها را نیز می توان به صورت کلی تعریف کرد.در این صورت کلاسی ایجاد میشود که تمام الگوریتم هایی را که توسط ان استفاده می گردد تعریف می کند.اما نوع واقعی که باید مورد استفاده قرار گیرد هنگامی که اشیایی از ان کلاس ایجاد می شوند به صورت پارامتر مشخص میگردد .وقتی کلاس کلی ایجاد میشود عمل مورد نظر را میتواند بر روی هر نوع داده ای انجام دهد. بر اساس نوعی که هنگام ایجاد شئ تعیین می کنید کامپایلر کد شناسایی را تولید می کند.شیوه اعلان کلاس کلی به صورت زیر است: } نام کلاس class <نوع <class template……} در این شکل کلی نوع هنگام ایجاد شئ مشخص می گردد و نوعی را که کلاس باید بر روی ان عمل نماید تعیین می کند. در صورت لزوم می توان بیش از یک نوع را تعیین کرد و انها را با کاما از هم جدا نمود. وقتی کلاس کلی را ایجاد کردید نمونه خاصی از ان کلاس را می توانید به طریق زیر مشخص کنید:ob ; < نوع > نام کلاس در این شکل کلی نوع مشخص می کند که کلاس باید بر روی چه نوعی عمل کند و ob شئ از این کلاس است.توابع عضو کلاس های کلی خودشان به صورت کلی اند.
اسلاید ۱۰: با استفاده از قالب ها می توان کلاسی را طراحی کرد که بر روی انواع مختلفی از داده ها عمل کند.به این ترتیب حجم برنامه ها کاهش پیدا می کند و قابلیت انعطاف برنامه بالا می رود.از طریق قالب ها می توانید یک کلاس کلی را تولید کنید که جایگزین بسیاری از کلاسها شود.انواعی که کلاسهای کلی بر روی انها عمل می کنند هنگام ترجمه مشخص می شوند.شکل ۱:template <class T>Class Tsimple { private: T data; public: Tsimple (T n); void show (); };نوع واقعی بعدا تعیین می شودهر نوع اولیه ای را میتوان برای ان تعریف کرد هر نوع اولیه ای را می توان برای این تابع عضو تعیین کرد
اسلاید ۱۱: شکل ۲:template < class T >Tsimple < T > :: Tsimple ( T n ){ data = n;}تعریف قالبی است که هنوز نوع داده مشخص نیستنوع n بعدا تعیین می شودهمانطور که در شکل ۱ میبینید تعریف سازنده کلاس مثل سایر توابع عضو است با این تفاوت که قبل از سطری که تعریف میشود باید template < class T > را قرار داد( شکل ۲).برای تعریف تابع عضو کلاس باید قبل از تعریف ان template < class T > را قرار داد( شکل ۳)
اسلاید ۱۲: تا کنون کلاسی را تعریف کردیم که هر نوع داده ای را به عنوان عضو خودش می پذیرد.در برنامه اصلی باید مشخص کنید که کلاس باید از چه نوعی باشد.در شکل ۴ نوع int را برای کلاس در نظر می گیریم.برای اینکه این کلاس را به کلاس نو ع کاراکتری یا نوع double تبدیل کنیم مانند شکل ۵ عمل می کنیم.Template < class T >Void Tsimple < T > :: show (){ cout << “ data = “ << data << endl ;}کلاس قالبتابع عضوشکل ۳:
اسلاید ۱۳: Tsimple < int > x( 25 )Tsimple < char > y ( ‘ P ‘ ) ;Tsimple < double > z ( 1.25 ) ;کلاس کلی را به کلاس نوع int تبدیل می کندشکل ۴:شکل ۵:کلاس کلی را به کلاس نوع کاراکتری تبدیل می کندکلاس کلی را به کلاس نوع double تبدیل می کند
اسلاید ۱۴: مثال ۲:برنامه ای که با تعریف یک کلاس کلی بر روی انواع مختلفی از داده ها عمل می کند.#include <iostream.h>#include <conio.h>#include <stdlib.h>template <class T>Class Tsimple { private: T data; public: Tsimple (T n); void show ();};//**************************template <class T>Tsimple < T > :: Tsim
- همچنین لینک دانلود به ایمیل شما ارسال خواهد شد به همین دلیل ایمیل خود را به دقت وارد نمایید.
- ممکن است ایمیل ارسالی به پوشه اسپم یا Bulk ایمیل شما ارسال شده باشد.
- در صورتی که به هر دلیلی موفق به دانلود فایل مورد نظر نشدید با ما تماس بگیرید.
مهسا فایل |
سایت دانلود فایل 