c++翁恺

本文解释了C++中面向对象编程的概念,特别是如何使用构造函数将参数值初始化到私有成员变量,以及公共成员函数如何间接访问这些值。以point3d类为例,演示了参数如何在构造函数中赋值给私有变量的过程。
摘要由CSDN通过智能技术生成

1、面向对象
在这里插入图片描述
Data:杯子的属性
Opera:杯子提供的服务
老师上课:
C:按流程执行
C++:定一个教室,有很多学生,投影仪,灯,每个学生反映不一样。
这个场景有什么东西东西关系是什么
在这里插入图片描述
有3个变量表示xyz,有个函数叫point3d,print
1给了x,2给了y,3给了z
xyz相当于上面的蛋黄,public相当于蛋黄外面

C++操作在结构体内部,C在外部,它只有变量

文心一言:
在C++中,当你创建point3d类的对象a,并给它传递参数1, 2, 3时,这些值是用来初始化point3d类的私有成员变量x, y, 和z的。私有成员变量只能由类的成员函数(包括构造函数、析构函数和其他成员函数)来访问和修改。公共成员函数(如print)可以用来间接地访问和显示这些私有成员变量的值。

下面是你提供的point3d类的一个简化版,它展示了构造函数是如何给私有成员变量赋值的:

cpp
class point3d {
public:
// 构造函数,用于初始化私有成员变量x, y, z
point3d(float x, float y, float z) : x(x), y(y), z(z) {}

// 打印函数,用于输出私有成员变量的值  
void print() {  
    std::cout << "Point3D(" << x << ", " << y << ", " << z << ")" << std::endl;  
}  

private:
float x; // 私有成员变量x
float y; // 私有成员变量y
float z; // 私有成员变量z
};

int main() {
// 创建point3d类的对象a,并初始化其私有成员变量x, y, z
point3d a(1, 2, 3);

// 调用a对象的print函数,输出其私有成员变量的值  
a.print(); // 输出:Point3D(1, 2, 3)  

return 0;  

}
在上面的代码中,point3d类的构造函数通过初始化列表: x(x), y(y), z(z)接收传入的参数,并将它们分别赋值给类的私有成员变量x, y, 和z。然后,在main函数中,当创建point3d对象a时,通过调用point3d(1, 2, 3),这三个参数1, 2, 3分别被用来初始化对象a的私有成员变量x, y, 和z。

公共成员(比如公共函数或公共静态成员变量)在类定义中声明,但它们的值通常不是在对象创建时通过构造函数参数来设置的。相反,公共成员的值可以通过公共成员函数来设置和获取。在你提供的point3d类定义中,并没有公共成员变量,只有一个公共成员函数print。因此,1, 2, 3这三个值并不是给公共成员赋值的,而是给私有成员变量赋值的。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值