你好。。。id_public变量不应该给出结果为 81 和 86 吗?为什么它为两个派生类占用不同的内存位置?
Hi...Shouldn't the id_public variable give the result as 81 & 86? Why is it taking up different memory locations for both the derive classes?
#include <bits/stdc++.h>
using namespace std;
class Parent {
public:
int id_public;
};
class Child1 : public Parent {
public:
void setId(int id) {
id_public = id;
cout<<id_public<<endl;
}
};
class Child2 : public Parent {
public:
void setId2(int id) {
cout<<id_public<<endl;
id_public += id;
cout<<id_public<<endl;
}
};
int main() {
Child1 obj1;
Child2 obj2;
obj1.setId(81);
obj2.setId2(5);
return 0;
}
这与两个类无关:您只有两个对象,每个对象都有自己的成员变量。一个变量必须是static
才能共享(这是很少需要的(。
相关文章:
- 你好。。。id_public变量不应该给出结果为 81 和 86 吗?为什么它为两个派生类占用不同的内存位置?
- 两个抽象类,派生自同一个基类.如何访问从一个抽象类到另一个抽象类的指针
- 在两个派生类之间执行专用代码
- C 两个派生的类中有彼此的对象(包括问题)
- 为什么从两个空类派生的空类的大小是 2?
- C++ 如何使用一个参数从派生类构造函数中调用具有两个参数的超类构造函数
- 如何在C++中正确表达具有相同实现的两个派生类函数?
- 两个派生类(十六进制 二进制)的虚拟功能
- 在方法中返回彼此类型的两个派生类
- 为什么这两个涉及受保护派生类的C++示例的编译方式不同?
- 基于布尔标志有效地派生公共函数的两个版本
- 为什么当我有两个函数时编译器没有显示错误,一个将采用基类,一个将派生类作为参数
- C++两个派生类的副本
- 来自两个相同基类的 C++ 派生类
- 如何创建从另一个派生的两个ATL接口
- 同一基类的两个派生对象如何通信
- 如何知道两个对象是否派生自同一基类
- 在两个派生类之间进行强制转换
- 如何通过定义派生类的构造函数来实例化两个基类的私有数据成员
- 检查类是否派生自特定类(编译,运行时两个答案都可用)