ProDeveloperTutorial.com

教程和编程解决方案
菜单
  • Shell脚本
  • 系统设计
  • Linux系统编程
  • 4g LTE
  • 编码问题
  • C
  • C ++
  • DSA
  • GIT

C ++第13章:C ++成员函数和不同的初始化方式

前开发者教程 2020年1月27日

在本章中,我们将学习:

  1. 在类内部定义成员函数
  2. 在类之外定义成员函数
  3. 成员函数的特征
  4. 内联成员函数

 

我们知道一个类具有数据成员和成员函数。在本章中,我们将学习如何声明成员函数以及初始化它们的不同方法。

会员功能介绍:

在类内部定义的函数称为“成员函数”。这些成员函数可以无限制地访问类中的私有数据成员。

 

成员函数可以在类内部或类外部定义。

 

1.在类中定义成员函数

成员函数可以在类内部定义。然后,这些函数默认为内联成员函数。

需要注意的一点是,如果要在创建对象后访问成员函数,则需要将它们定义为“公共”访问说明符。

在类内部定义的函数示例:

 

class Example

{


public:
       void member_function_defined_inside_class()
       {
          cout<<"Hi from member_function_defined_inside_class"<<endl;
       }
};

 

2.在类之外定义成员函数

也可以在类外部定义函数。在这种情况下,我们遵循以下几点:

  1. 我们在类内部编写函数声明。
  2. 在类外定义函数时,我们使用范围解析运算符“ ::”。
  3. 函数名称之前是类名称和范围解析运算符。

 

句法:

<function_return_type> <class_name>:: <function_name>

例:

 

class Example
{

public:
    void member_function_defined_outside_class();
};


void 例::member_function_defined_outside_class()
{
    cout<<"Hi from member_function_defined_outside_class"<<endl;
}

 

如何调用成员函数?

我们可以通过创建类对象来调用成员函数。

 

例:

 

/*

* File     : member_function_example.cpp

* Author   : [email protected]

* Copyright: @ 前开发者教程.com

*/

#include<iostream>

using namespace std;

class Example
{

public:
    void member_function_defined_inside_class()
    {
         cout<<"Hi from member_function_defined_inside_class"<<endl;
    }

    void member_function_defined_outside_class();
};


void 例::member_function_defined_outside_class()
{
    cout<<"Hi from member_function_defined_outside_class"<<endl;

}

int main()
{
    Example e1;
    e1.member_function_defined_inside_class();

    e1.member_function_defined_outside_class();

}

输出:

Hi from member_function_defined_inside_class

Hi from member_function_defined_outside_class

成员函数的特征

 

  1. 成员函数定义为私有,因此无法在类外部使用对象进行访问。
  2. 非静态成员函数必须通过对象进行访问。
  3. 在不同的类中可以有相同名称的成员函数。
  4. 一个成员函数可以访问另一个成员函数而无需创建对象。

 

4.内联成员函数

内联成员函数将用实际的函数定义替换函数调用。因此,防止了函数调用和函数返回开销。

建议将功能最少的功能用作内联。当在编译时替换函数定义代替函数调用时,程序大小趋于增加。由于是编译时间,因此我们无法针对库函数执行此操作。

默认情况下,在一个类中定义的所有成员函数都是内联成员函数。

句法:

inline return_type class_name::function_name(arguments)
{
    //statements;
}


在类外部定义的内联成员函数的示例。

/*

* File     : inline_member_function_example.cpp

* Author   : [email protected]

* Copyright: @ 前开发者教程.com

*/

#include<iostream>
using namespace std;

class Example
{
public:
    void inline_member_function_defined_outside_class();
};

inline void 例::inline_member_function_defined_outside_class()
{
    cout<<"Hi from inline_member_function_defined_outside_class"<<endl;
}


int main()
{
    Example e1;
    e1.inline_member_function_defined_outside_class();

}

输出:

Hi from inline_member_function_defined_outside_class

 

 

该网站上可用的教程列表:

C编程20+章C ++编程80+章
100多个编码问题数据结构和算法85+章
系统设计20+章Shell脚本编写12章
4g LTE 60+章节最常见的编码问题
5G NR 50+章Linux系统编程20+章
分享
电子邮件
鸣叫
领英
Reddit
绊倒
Pinterest的
上一篇文章
下一篇

关于作者

前开发者教程

每天我们都会讨论竞争性编程问题,请加入我们的网站:   电报频道

ProDeveloperTutorial.com

教程和编程解决方案
版权© 2020 ProDeveloperTutorial.com
从以下课程获得热门课程: 教育性的
<acronym class="UIk3kg7"></acronym>

  • <applet class="cyZqreQ"></applet>

    <nav id="MzTTTEb"><xmp class="HbILMSV"><ruby id="QYKvuBq"></ruby>



    <td id="vKFZtBN"></td>
        • <wbr id="syQUtbK"></wbr>