gpt4 book ai didi

c++ - 计算机如何确保只能通过对象访问成员?

转载 作者:行者123 更新时间:2023-11-28 05:08:55 25 4
gpt4 key购买 nike

计算机如何确保在不使用该结构的对象的情况下无法访问该结构的成员?也许这个措辞不好,所以这里是一个例子:我们有这个结构:

struct products 
{
int a;
int b;
} apples;

这只能通过结构的对象访问,在本例中是 apples:

int main ()
{
apples.a = 20; //the member a can be accessed through apples and a would be another variable if accessed through another object, why is that?
return 0;
}

类(class)也一样...那么计算机(不确定是什么在处理它)如何确保只能通过该结构或类(类型)的对象访问 products 的成员?

谢谢!

最佳答案

想法是您需要结构/类的实例才能访问结构/类的成员

当你写的时候

struct products
{
int a;
int b;
} apples;

你在内存中声明一个结构产品的实例(取决于声明的位置)

 +---+---+
| a | b |
+---+---+

只是写作

 struct products
{
int a;
int b;
};

没有创建结构的实例,而是你告诉了 编译器,有一个名为 products 的结构,它有两个成员 a 和 b 该结构实际​​上是一种类型。

关于c++ - 计算机如何确保只能通过对象访问成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43957673/

25 4 0
文章推荐: jquery - 将参数和值从 HTML 传递到 jQuery(事件)
文章推荐: javascript - Angular 2 - 无法将值传递给模型 - Javascript、Typescript
文章推荐: html - 如何在页面顶部显示可关闭的
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com