C++ sinf metodlari
Sinf metodlari
Metodlar — sinfga tegishli funksiyalar.
Sinfga tegishli funksiyalarni aniqlashning ikki usuli bor:
- Sinf ta’rifi ichida
- Sinf ta’rifidan tashqarida
Metodni sinf ichida aniqlash
Quyidagi misolda sinf ichida funksiya aniqlaymiz va uni "myMethod" deb nomlaymiz.
Eslatma: Metodlarga xuddi atributlarga murojaat qilgandek murojaat qilasiz: sinf obyektini yaratib, nuqta sintaksisidan (.) foydalanasiz:
Misol (sinf ichida)
class MyClass { // The class
public: // Access specifier
void myMethod() { // Method/function defined inside the class
cout << "Hello World!";
}
};
int main() {
MyClass myObj; // Create an object of MyClass
myObj.myMethod(); // Call the method
return 0;
}
O‘zingiz sinab ko‘ring »
Metodni sinfdan tashqarida aniqlash
Ba’zan metodni sinf ichida e’lon qilib, keyinroq aniqlash yaxshiroq (ayniqsa yirik dasturlarda).
Buning uchun sinf nomi, undan keyin ko‘rinish sohasini aniqlash operatori :: va so‘ng funksiya nomi yoziladi:
Misol (sinfdan tashqarida)
class MyClass { // The class
public: // Access specifier
void myMethod(); // Method/function declaration
};
// Method/function definition outside the class
void MyClass::myMethod() {
cout << "Hello World!";
}
int main() {
MyClass myObj; // Create an object of MyClass
myObj.myMethod(); // Call the method
return 0;
}
O‘zingiz sinab ko‘ring »
Parametrlar
Metodlarga ham xuddi oddiy funksiyalar kabi qiymatlar uzatishingiz mumkin:
Misol
#include <iostream>
using namespace std;
class Car {
public:
int speed(int maxSpeed);
};
int Car::speed(int maxSpeed) {
return maxSpeed;
}
int main() {
Car myObj; // Create an object of Car
cout << myObj.speed(200); // Call the method with an argument
return 0;
}
O‘zingiz sinab ko‘ring »
Topshiriq
"Woof!" matnini chiqaradigan bark() metodiga ega Dog sinfini yarating.
So‘ng sinf obyekti yordamida bu metodni main() ichidan chaqiring.
#include <iostream>
using namespace std;
class Dog {
public:
void bark() {
cout << "Woof!";
}
};
int main() {
Dog myDog;
myDog.bark();
return 0;
}
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
