advertise laitec sharif univercity
سیستم اتوماسیون دهیاری ، پروژه مهندسی نرم افزار

سیستم اتوماسیون دهیاری ، پروژه مهندسی نرم افزار

10000 تومان
دانلود پروژه معمای 8 با الگوریتم ژنتیک در سی شارپ

دانلود پروژه معمای 8 با الگوریتم ژنتیک در سی شارپ

10000 تومان
دانلود سورس اندروید اپلیکیشن افزایش سرعت گوشی

دانلود سورس اندروید اپلیکیشن افزایش سرعت گوشی

18000 تومان
دانلود پروژه مهندسی نرم افزار ، سیستم داروخانه

دانلود پروژه مهندسی نرم افزار ، سیستم داروخانه

10000 تومان
دانلود برنامه رنگ آمیزی گراف با الگوریتم عقبگرد در سی شارپ

دانلود برنامه رنگ آمیزی گراف با الگوریتم عقبگرد در سی شارپ

10000 تومان

تعریف مجدد عملگرها در سی پلاس پلاس ++C

در زبان ++C بعضی از عملگرها را میتوانید طوری تعریف کنید که اعمال خاصی را در مورد کلاسهایی که ایجاد میکنید انجام دهند. این عمل را تعریف مجدد عملگرها میگویند
تعریف مجدد عملگرها در سی پلاس پلاس ++C

تعریف مجدد عملگرها در سی پلاس پلاس C++

هر یک از عملگرهای زبان سی پلاس پلاس را که قبلا معرفی کردیم، وظایفی را بر عهده دارند. این عملگرها در مورد متغیرها به کار برده میشوند. بعضی از عملگرها را میتوانید طوری تعریف کنید که اعمال خاصی را در مورد کلاسهایی که ایجاد میکنید انجام دهند. این عمل را تعریف مجدد عملگرها میگویند. وقتی عملگری دوباره تعریف میشود، تا مأموریت جدیدی را در مورد کلاسها انجام دهد، وظیفه اصلی خودش را نیز میتواند انجام دهد.

توانایی تعرف مجدد عملگرها، از قوی ترین ویژگی های زبان سی پلاس پلاس است. این کار موجب میشود تا انواع کلاس جدید بطور کامل در محیط برنامه نویسی مجتمع شود. پس از اینکه عملگرهای مناسبی مجددا تعریف شدند، میتوانید اشیا را همانند سایر انواع اولیه در C++ مثل int و float و... در عبارات به کار ببرید. گرچه C++ اجازه نمیدهد عملگر های جدیدی ایجاد کنید، اجازه میدهد که اغلب عملگرها را دوباره تعریف کنید. بطوریکه وقتی این عملگرها با اشیا به کار برده میشوند، در رابطه با انواع جدید معنا پیدا میکنند.

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

برای به کار بردن عملگرها با اشیای کلاس، آن عملگرها باید دوباره تعریف شوند. در این خصوص دو استثنا وجود دارد، عملگر انتساب "=" را بدون تعریف مجدد میتوان با کلاسها به کار برد. استثنای دوم این است که عملگر آدرس "&" را بدون تعریف مجدد میتوان با اشیایی از هر کلاس به کار برد. این عملگر، آدرس اشیا را در حافظه مشخص میکند.

تعریف مجدد عملگرها برای کلاسهای محاسباتی بسیار مفید است. در این گونه موارد، بسیاری از عملگرها باید مجددا تعریف شوند. هدف اصلی تعریف مجدد عملگرها این است که قدرت C++ در انجام محاسبات با انواع اولیه، به کلاسها نیز توسعه داده شود.

هنگام تعریف مجدد عملگرها تقدم آنها قابل تغییر نیست اما پرانتز میتواند ترتیب ارزیابی عملگرها را تغییر دهد.

 

تعریف مجدد عملگرها به کمک تابع عضو کلاس

 برای تعریف تابع عملگر عضو کلاس، بصورت زیر عمل میشود:

نام کلاس         نوع تابع :: operator    لیست آرگومان ها )      عملگر)

{

                  اعمالی که باید انجام شوند

}

 

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

 

 



0
نظرات

نظر خود را ارسال کنید



نام:
ایمیل:
دیدگاه:
captcha
کد امنیتی :


advertise
تعریف دوباره عملگر در زبان های برنامه نویسی cتعریف دوباره ی عملگرها به کمک تابع عضو کلاسآموزش روش های تعریف عملگر در ++Cتعریف دوباره ی عملگرها در زبان سی پلاس پلاستعریف مجدد عملگرها در سی پلاس پلاس چگونه است؟تبلیغات ارزان سایت آموزش برنامه نویسیتبلیغات مخصوص طراحان وب سایتتبلیغات در سایت برنامه نویسیتبلیغات اینترنتی برای برنامه نویساندر آغوش مینیمالیسممنوی همبرگر با سه خط افقی که روی یکدیگر قرار گرفته اند نشانه چیست؟ سوئیچ به یک ستون واحدتبدیل متن ساده به وبلاگ و سایت های پویا با React.jsکتابخانه sass برای استفاده آسان تر از آنکتابخانه سطح بالا برای اتوماتیک سازی اعمال مرورگر لیست برچسب ها
تمامی حقوق این سایت اعم از محتوی ، تصاویر ، قالب و ... متعلق به گروه مهندسی وب سایت سورس کد می باشد.
SourceCodes.ir ، افقی روشن برای برنامه نویسان ، از مبتدی تا حرفه ای

پیشنهادات ویژه سورس کد

پکیج ویژه پروژه پایانی رشته کامپیوتر دانلود مجموعه 70 پروژه کاربردی سی شارپ وب سایت فروشگاه با php