在C++语言中类的成员函数

简介: 在C++语言中类的成员函数


在C++语言中,类的成员函数是指那些把定义和原型写在类定义内部的函数,它们是类的一个成员,可以访问对象中的所有成员。类的成员函数是面向对象编程的核心组成部分,因为它们定义了类的行为和功能。

成员函数的声明和定义

在类定义内部,成员函数的声明包括函数的返回类型、函数名以及可能的参数列表。函数的定义是在类外部,通常与声明放在一起,但也可以分开。如果函数定义在类外部,必须在类内部声明函数,并使用作用域解析运算符::来指明函数所属的类。

例如:

image.png

在这个例子中,Box类有一个名为volume的成员函数,它计算盒子的体积。首先,在类内部声明了volume函数,然后在外部定义了它。

成员函数的访问控制

成员函数可以根据访问控制符分为公共(public)、私有(private)和受保护(protected)成员函数。公共成员函数可以从类的内部和外部访问;私有成员函数只能从类的内部访问;受保护成员函数类似于私有成员函数,但它们还可以被派生类访问。

例如:

image.png

在这个例子中,Base类有一个受保护的protectedData成员变量和两个成员函数:publicFunction和privateFunction。Derived类是Base的公有派生类,它可以访问protectedData成员变量,但不能访问privateData成员变量。

成员函数的默认访问权限

如果不显式指定成员函数的访问控制符,则成员函数的默认访问权限取决于其定义的位置。如果在类内部定义,则默认为私有;如果在外部定义,则默认为公共。

例如:

image.png

在这个例子中,即使没有明确指定volume函数的访问控制符,它也是公共的,因为它在类外部定义。

成员函数的调用

成员函数可以通过对象名加方法名的形式调用,也可以通过类名加作用域解析运算符::再加方法名的形式调用。

例如:

image.png

成员函数的作用域

成员函数的作用域是整个类体,这意味着成员函数可以访问类内的所有成员,包括其他成员函数和成员变量。

总之,C++类的成员函数是定义类行为的关键。它们可以访问类的所有成员,并通过对象名或类名来调用。成员函数的访问控制符决定了它们可以被哪些部分访问,这是面向对象编程中的一个重要概念。

相关实践学习
云安全基础课 - 访问控制概述
课程大纲 课程目标和内容介绍视频时长 访问控制概述视频时长 身份标识和认证技术视频时长 授权机制视频时长 访问控制的常见攻击视频时长
相关文章
|
1月前
|
编译器 C++
C++语言预处理器学习应用案例
【4月更文挑战第8天】C++预处理器包括条件编译、宏定义和文件包含等功能。例如,条件编译用于根据平台选择不同代码实现,宏定义可简化常量和变量名,文件包含则用于整合多个源文件。示例中展示了如何使用`#ifdef`等指令进行条件编译,当`DEBUG`宏定义时,`PRINT_LOG`会打印调试信息,否则不执行。
14 1
|
13天前
|
Linux 程序员 图形学
C++语言在现代软件开发中的应用与实践
C++语言在现代软件开发中的应用与实践
20 2
|
13天前
|
安全 编译器 C++
【C++类和对象】const成员函数及流插入提取
【C++类和对象】const成员函数及流插入提取
|
13天前
|
存储 程序员 C语言
深入理解C++:从语言特性到实践应用
深入理解C++:从语言特性到实践应用
23 3
|
13天前
|
存储 算法 安全
C++语言深度探索:从基础到实践
C++语言深度探索:从基础到实践
13 2
|
25天前
|
机器学习/深度学习 人工智能 大数据
开发语言漫谈-C++
C++最初的名字为“带类的C”
|
25天前
|
存储 编译器 C++
C++:类之六脉神剑——默认成员函数
C++:类之六脉神剑——默认成员函数
31 0
|
25天前
|
缓存 编译器 API
NumPy与其他语言(如C/C++)的接口实践
【4月更文挑战第17天】本文介绍了NumPy与C/C++的接口实践,包括Python与C/C++交互基础、NumPy的C API和Cython的使用。通过案例展示了如何将C++函数与NumPy数组结合,强调了内存管理、类型匹配、错误处理和性能优化的最佳实践。掌握这些技能对于跨语言交互和集成至关重要。
|
26天前
|
存储 编译器 C++
【C++成长记】C++入门 | 类和对象(中) |拷贝构造函数、赋值运算符重载、const成员函数、 取地址及const取地址操作符重载
【C++成长记】C++入门 | 类和对象(中) |拷贝构造函数、赋值运算符重载、const成员函数、 取地址及const取地址操作符重载
|
26天前
|
编译器 C++
【C++成长记】C++入门 | 类和对象(中) |类的6个默认成员函数、构造函数、析构函数
【C++成长记】C++入门 | 类和对象(中) |类的6个默认成员函数、构造函数、析构函数