Un método es un procedimiento o función en OOPs Concepts . Mientras que una función es un grupo de código reutilizable que se puede usar en cualquier parte del programa. Esto ayuda a la necesidad de escribir el mismo código una y otra vez. Ayuda a los programadores a escribir códigos modulares.
Métodos:
- Un método también funciona igual que el de función.
- Un método se define dentro de una clase. Por ejemplo: main() en Java
- Un método puede ser privado, público o protegido.
- El método es invocado solo por su referencia/objeto. Por ejemplo: si la clase tiene obj como nombre de objeto, entonces el método es llamado por:
obj.method();
- Un método es capaz de operar en datos que están contenidos dentro de la clase.
- Cada objeto tiene su propio método que está presente en la clase.
- Una función es un bloque de declaraciones que toma una entrada específica, hace algunos cálculos y finalmente produce la salida.
- Una función se define de forma independiente. Por ejemplo: main() en C++
- Por defecto, una función es pública.
- Se puede acceder a él desde cualquier parte de todo el programa.
- Se llama por su propio nombre.
- Tiene la capacidad de devolver valores si es necesario.
- Si se define una función, será la misma para todos los objetos que se hayan creado.
A continuación se muestra el programa para ilustrar funciones y métodos en C++:
Programa 1:
// C++ program to illustrate functions #include "bits/stdc++.h" using namespace std; // Function Call to print array elements void printElement(int arr[], int N) { // Traverse the array arr[] for (int i = 0; i < N; i++) { cout << arr[i] << ' '; } } // Driver Code int main() { // Given array int arr[] = { 13, 15, 66, 66, 37, 8, 8, 11, 52 }; // length of the given array arr[] int N = sizeof(arr) / sizeof(arr[0]); // Function Call printElement(arr, N); return 0; }
Producción:
13 15 66 66 37 8 8 11 52
Programa 2:
// C++ program to illustrate methods // in class #include "bits/stdc++.h" using namespace std; // Class GfG class GfG { private: string str = "Welcome to GfG!"; public: // Method to access the private // member of class void printString() { // Print string str cout << str << '\n'; } }; // Driver Code int main() { // Create object of class GfG GfG g; // Accessing private member of // class GfG using public methods g.printString(); return 0; }
Producción:
Welcome to GfG!
Programa 3:
// C++ program to illustrate methods // and functions #include <iostream> using namespace std; // Function call to return string string offering(bool a) { if (a) { return "Apple."; } else { return "Chocolate."; } } // Class Declaration class GFG { public: // Method for class GFG void guest(bool op) { if (op == true) { cout << "Yes, I want fruit!\n"; } else { cout << "No, Thanks!\n"; } } }; // Driver Code int main() { bool n = true; cout << "Will you eat fruit? "; // Create an object of class GFG GFG obj; // Method invoking using an object obj.guest(n); if (n == true) { // Append fruit using function // calling cout << "Give an " + offering(n); } // Giving fruit..Function calling else { // Append fruit using function // calling cout << "Give a " + offering(n); } return 0; }
Producción:
Will you eat fruit? Yes, I want fruit! Give an Apple.