C++ 对象、引用与初始化详解
1. 对象的基本概念
在 C++ 中,每个对象都是通过定义语句创建的,该语句引入、创建并可选择初始化一个变量。变量可以是对象或非静态数据成员的引用,通过声明引入。例如:
void foo() {
int x;
}
在这个例子中,我们在 foo() 函数的栈上定义并实例化了一个整数类型的对象。C++ 中的每个对象在特定的内存区域占用一定量的内存。由于该对象在栈上,它具有自动存储期,即函数开始时创建,函数结束时自动销毁。对象实例化时使用的内存量是编译时已知的值,可以使用 sizeof 运算符获取。
不同类型的对象在不同的底层硬件上占用的内存大小可能不同。例如,在 Linux Mint 21 搭配 GCC 12.2 的环境中,使用的底层数据模型是 LP64,这意味着 int 类型占 4 字节, long 和指针类型占 8 字节。以下代码展示了这些类型的大小:
int i;
long l;
char* p;
std::cout << "sizeof(int) = " << sizeof(int) << "; sizeof(i) = "
<< sizeof(i) << '\n';
std::cout << "sizeof(long) = " << sizeof(long
超级会员免费看
订阅专栏 解锁全文
1088

被折叠的 条评论
为什么被折叠?



