下面是一个使用const的例子:

void main()
{
    const int x = 5;
    int* ptr = &x; // 编译错误,无法将常量引用赋值给非常量指针
    *ptr = 10; // 编译错误,无法修改常量的值
}

在上面的例子中,我们使用了const关键字来声明一个常量x,并且将它的值设为5。然后,我们试图将常量x的地址赋值给一个非常量指针ptr,但是编译器会报错,因为我们不能将常量的地址赋给非常量指针。接着,我们试图通过指针ptr修改常量x的值,但是编译器也会报错,因为我们不能修改一个常量的值。

总之,const关键字可以用来声明常量,并且可以防止对常量的值进行修改。但是在其他作用域中,如果有一个非常量引用指向了这个常量,那么这个非常量引用仍然可以对常量的值进行修改。

dmd2的immutable和const的区别官网解释const只影响他的当前作用域但是其他引用可以进行修改给我一个具体例子让我明白const的用法

原文地址: https://www.cveoy.top/t/topic/eTqJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录