Skip to content

Sinf metodlari (Class Methods)

Sinf metodlari

Metodlar — sinfga tegishli bo'lgan funksiyalardir.

Sinfga tegishli funksiyalarni ikkita usulda aniqlash mumkin:

  • Sinf ichida
  • Sinf tashqarisida

Sinf ichida metod aniqlash

Quyidagi misolda sinf ichida funksiyani aniqlaymiz va uni myMethod deb nomlaymiz.

ESLATMA

Metodlarga atributlar kabi kirasiz — sinfning obyektini yaratib, nuqta sintaksisi (.) dan foydalaning.

MISOL

cpp
class MyClass {        // Sinf
  public:              // Kirish spetsifikatori
    void myMethod() {  // Sinf ichida aniqlangan metod
      cout << "Salom Dunyo!";
    }
};

int main() {
  MyClass myObj;     // MyClass sinfining obyektini yaratish
  myObj.myMethod();  // Metodni chaqirish
  return 0;
}

Sinf tashqarisida metod aniqlash

Ba'zan (ayniqsa katta dasturlarda) metodni sinf ichida e'lon qilib, keyinroq tashqarida aniqlash yaxshiroq.

Bu sinf nomini, keyin soha ajratish operatori :: ni, va funksiya nomini yozish orqali amalga oshiriladi:

MISOL

cpp
class MyClass {        // Sinf
  public:              // Kirish spetsifikatori
    void myMethod();   // Metod e'loni
};

// Sinf tashqarisida metod aniqlash
void MyClass::myMethod() {
  cout << "Salom Dunyo!";
}

int main() {
  MyClass myObj;     // MyClass sinfining obyektini yaratish
  myObj.myMethod();  // Metodni chaqirish
  return 0;
}

Parametrlar

Metodlarga oddiy funksiyalar kabi qiymatlar ham uzatish mumkin:

MISOL

cpp
#include <iostream>
using namespace std;

class Car {
  public:
    int speed(int maxSpeed);
};

int Car::speed(int maxSpeed) {
  return maxSpeed;
}

int main() {
  Car myObj;
  cout << myObj.speed(200);
  return 0;
}

Amaliy topshiriq

bark() metodi "Vov!" deb chiqaradigan Dog sinfini yarating. Keyin main() ichida sinf obyekti orqali shu metodni chaqiring.

Yechimni ko'rish
cpp
#include <iostream>
using namespace std;

class Dog {
  public:
    void bark() {
      cout << "Vov!";
    }
};

int main() {
  Dog myDog;
  myDog.bark();
  return 0;
}