add ReadMe

This commit is contained in:
fengbh 2025-03-19 16:47:38 +08:00
parent 68bcc3fb47
commit e0a07ac556

38
4_class/ReadMe.md Normal file
View File

@ -0,0 +1,38 @@
# 基类和扩展类关系研究
验证问题:基类和扩展类之间变量、函数、重载、虚拟方法等之间的关系是怎样的,要如何理解。
结论:类由变量和函数组成,扩展类可以理解在基类的基础上增加了一个类。但是有几点需要注意:
* 基类和扩展类的**变量空间彼此独立**,即使同名。
* 基类和扩展类的**函数空间彼此独立**,即使同名。
* 基类函数只能访问基类变量,扩展类函数只能访问扩展类变量。
* **基类访问扩展类变量的唯一方法就是使用重载后的函数(虚拟方法)。**
* **virtual声明的函数会覆盖父类中的同名函数。**
## 快速开始
```bash
make all
```
### 输入结果
```text
Chronologic VCS simulator copyright 1991-2018
Contains Synopsys proprietary information.
Compiler version O-2018.09-SP2_Full64; Runtime version O-2018.09-SP2_Full64; Mar 19 16:29 2025
//******************** P1.print ********************
[tb.\BasePacket::printA ] A is 1
[tb.\My_Packet::printB ] B is 5
[tb.\BasePacket::printC ] C is 3
//**************************************************
//******************** P2.print ********************
[tb.\BasePacket::printA ] A is 1
[tb.\My_Packet::printB ] B is 5
[tb.\My_Packet::printC ] C is 6
//**************************************************
V C S S i m u l a t i o n R e p o r t
Time: 0 ps
CPU Time: 0.130 seconds; Data structure size: 0.0Mb
Wed Mar 19 16:29:22 2025
```