Métodos de classe C++
Métodos de classe
Métodos são funções que pertencem à classe.
Existem duas maneiras de definir funções que pertencem a uma classe:
- Definição de classe interna
- Definição de classe externa
No exemplo a seguir, definimos uma função dentro da classe e a chamamos de " myMethod
".
Observação: você acessa métodos da mesma forma que acessa atributos; criando um objeto da classe e usando a sintaxe de ponto ( .
):
Exemplo interno
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;
}
Para definir uma função fora da definição de classe, você deve declará-la dentro da classe e depois defini-la fora da classe. Isso é feito especificando o nome da classe, seguido do ::
operador de resolução de escopo, seguido do nome da função:
Exemplo Externo
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;
}
Parâmetros
Você também pode adicionar parâmetros:
Exemplo
#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;
}