📜  带有示例的C++中的方法与函数

📅  最后修改于: 2021-05-30 20:03:23             🧑  作者: Mango

方法是OOP概念中的过程或函数。而函数是一组可重用的代码,可以在程序中的任何位置使用。这有助于一次又一次地编写相同的代码。它可以帮助程序员编写模块化代码。

方法:

  1. 方法也与函数相同。
  2. 方法是在类内部定义的。例如: Java的main()
  3. 方法可以是私有的,公共的或受保护的。
  4. 该方法仅由其引用/对象调用。例如:如果class以obj作为对象名,则通过以下方式调用该方法:
    obj.method();
    
  5. 一种方法可以对类中包含的数据进行操作
  6. 每个对象都有自己的方法,该方法存在于类中。

职能:

  1. 函数是一组语句,它们接受特定的输入,进行一些计算,最后产生输出。
  2. 函数是独立定义的。例如: C++中的main()
  3. 默认情况下,函数是公共的。
  4. 可以在整个程序中的任何位置访问它。
  5. 它的名称本身被称为。
  6. 如果需要,它具有返回值的能力。
  7. 如果定义了一个函数,则对于已创建的每个对象,该函数都是相同的。

下面是说明C++中的功能和方法的程序:

程序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;
}
输出:
13 15 66 66 37 8 8 11 52

程式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;
}
输出:
Welcome to GfG!

程序3:

// C++ program to illustrate methods
// and functions
#include 
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;
}
输出:
Will you eat fruit? Yes, I want fruit!
Give an Apple.
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”