gpt4 book ai didi

c++ - C++ 中的 int 和 const int

转载 作者:太空狗 更新时间:2023-10-29 23:35:12 25 4
gpt4 key购买 nike

当我问到 C++ 中的 int 和 const 有什么区别?有人这样说。

An int can be modified when you need, it is read/write and a const int is read only.(can change dynamically). You can use a const int for something like fixed value, and const int memory usage is less than normal int.

在 C++ 中,const int 内存使用量是否少于普通 int. 是真的吗?

最佳答案

它可能是也可能不是,这取决于它的使用方式。如果不需要,大多数编译器都非常聪明地不为 const 对象创建存储。所以,例如:

void f() {
const int arr_size = 10;
int arr[arr_size];
// do something with arr
}

这里,arr_size 的唯一用途是指定数组的大小。没有必要为此创建一个 int 对象;编译器只是创建一个大小为 10 的数组。

另一方面有:

void f(const int* ip) {
// do something with ip
}

int main() {
const int n = 100;
f(&n);
return 0;
}

这里,编译器必须为n创建一个int对象,因为代码取n的地址。

关于c++ - C++ 中的 int 和 const int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43708927/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com