نحوه فراخوانی یک روش

فهرست مطالب:

نحوه فراخوانی یک روش
نحوه فراخوانی یک روش

تصویری: نحوه فراخوانی یک روش

تصویری: نحوه فراخوانی یک روش
تصویری: آموزش سی شارپ - جلسه نوزدهم: ساختار کلی متدها و نحوه ی فراخوانی آن ها (بخش دوم) 2024, نوامبر
Anonim

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

نحوه فراخوانی یک روش
نحوه فراخوانی یک روش

دستورالعمل ها

مرحله 1

هر زمان که به یک کلاس مراجعه می کنید ، دامنه دید آن را در نظر بگیرید. توصیه می شود در ابتدای کد برنامه ، پرونده را با شرح کلاس نشان دهید. برای این کار ، ساختاری مانند # شامل "File_name.h" بنویسید. یا خود کد توضیحات را در همان مکان وارد کنید. قبل از فراخوانی روش ، شی را با استفاده از علامت گذاری زیر شروع کنید: CClass1 Obj1 ، در اینجا CClass1 نام کلاس است ، Obj1 نام شی است. همراه با یک شی کلاس ، می توان از اشاره گرهای نمونه آن نیز استفاده کرد. در این حالت ، یک اشاره گر اعلام کرده و حافظه را تخصیص دهید: CClass1 * Obj2 = new CClass1 ().

گام 2

روش شی را با دستور زیر فراخوانی کنید: Obj1.metod1 () ، در اینجا عملگر "." (نقطه). هنگام کار با اشاره گر بر روی نمونه کلاس ، از عملگر "->" استفاده کنید: Obj2-> metod1 (). دامنه مورد یا نشانگر را در نظر بگیرید. بنابراین ، هنگام اعلام یک متغیر در یک تابع ، خارج از آن برای کامپایلر قابل مشاهده نخواهد بود.

مرحله 3

اگر یک متد کلاس با مشخص کننده دسترسی عمومی توصیف شود ، می توان آن را با استفاده از روش های فوق از هرجای برنامه فراخوانی کرد. با این حال ، اغلب روش ها ، به منظور محافظت از داده ها ، وضعیت پنهان را دریافت می کنند. بنابراین ، هنگامی که با استفاده از private اعلام می شود ، یک تابع فقط در داخل کلاس خود قابل دسترسی است. این فقط در چارچوب روش دیگری از یک نمونه از همان کلاس فراخوانی می شود. اصلاح کننده محافظت شده همچنین استفاده از متد را برای کد شخص ثالث غیرفعال می کند ، اما چنین فرصتی را برای کلاس های کودک فراهم می کند.یک مثال فراخوانی یک متد در یک کلاس ارثی: کلاس A // کلاس والد {محافظت شده: void funcA ()؛ }؛ کلاس B: عمومی A // کلاس ارثی (کودک) {public: void funcB () {funcA ()؛ } // فراخوانی متدی از کلاس والد}؛

مرحله 4

هنگام دسترسی به متدی از یک کلاس در تابع دیگری از همان کلاس ، ایجاد نمونه ای از آن ضروری نیست. کافی است نام متد و پارامترهای مورد نظر را مشخص کنید.یک مثال از کد فراخوانی روش: کلاس CClass2 {void func1 (int k)؛ void func2 () {func1 (50)؛ }}

مرحله 5

راه دیگری برای دسترسی به روش بدون ایجاد کلاس وجود دارد. با این حال ، این مستلزم آن است که روش مشخص شده در کلاس بصورت استاتیک اعلام شود. مثالی از توضیحات متد در یک کلاس: کلاس CClass3 {static int func3 ()؛} در این حالت ، فراخوانی روش func3 را می توان در هر کجا انجام داد در برنامه با استفاده از ساختار: CClass3:: func3 ().

توصیه شده: