`

改变const

    博客分类:
  • c++
阅读更多
多加几个const说明你代码牛,但是传进const的变量就不能改变么?一般我们可以用const_cast去转,但是这样也可以:
#include<iostream>
using namespace std;

void f1(const int& r)
{
    ++(int&)r;//也许不合理,但它是对的
}

int main()
{
    int a = 2;
    f1(a);
    cout << a << endl;
}

3

所以函数里不想改变变量值一般再加个const
void f1(const int& r)const
{

}
分享到:
评论

相关推荐

    c语言const的用法详解

    - 指针可以与`const`结合使用,来限制指针所指向的数据或者指针本身的改变。 ```c int ii = 0; const int i = 0; // i的值不能被改变 const int *p1i = &i; // p1i可以移动,但其指向的值不能改变 int *const ...

    Dan_Sake 总结const用法一文,原创译稿

    这有助于提高代码的可读性和安全性,因为读者看到`const`参数就能知道这个参数不会被函数改变: ```cpp void printValue(const int x) { // x在这里不能被修改 // ... } ``` 接下来,`const`可以修饰函数的返回...

    第五课 - const和volatile分析

    - **定义与作用**:`const`和`volatile`可以结合起来使用,创建一个既不可改变又可能随时被改变的变量。 - **示例代码**: ```c const volatile int *p; // 指针p指向的是一个常量,这个常量还可能随时改变 ``` ...

    C++const的用法

    通过强制类型转换,将地址赋给变量,再作修改即可以改变 const 常量值。 8. 请分清数值常量和指针常量 int ii=0; const int i=0; //i 是常量,i 的值不会被修改 const int *p1i=&i; //指针 p1i 所指内容是常量,...

    C#变量和const常量的使用

    尝试改变const常量的值会导致编译错误。此外,const常量是静态的,它们在编译时就被解析,因此不能引用运行时才能确定的值,比如其他变量的值。 了解了变量和常量的基本概念后,让我们看看它们在实际编程中的应用。...

    const T vs. T const

    在这两种情况下,vectorTable都是一个const指针数组,但在第一个声明中,VP是指向void的指针,const被用来修饰VP,意味着不能通过VP改变其所指向的void类型的数据。而在第二个声明中,const直接修饰了void*,意味着...

    Const,Const函数,Const变量,函数后面的Const.txt

    例如,当一个函数接收`const`类型的参数时,意味着该函数内部不能改变传入参数的值。 - **示例**:考虑以下字符串复制函数: ```cpp void StringCopy(char* strDestination, const char* strSource); ``` 在这...

    const用法 const int *a; int * const a;

    在C++编程语言中,`const`关键字用于声明常量,它可以用来修饰变量、指针、引用等,以限制它们的可变性。本文将详细解释`const`的各种用法。 1. **常量变量**: - `const int a;` 或 `int const a;`:声明了一个...

    const和volatile分析

    1. `const`的基本概念:`const`用来声明常量,即一旦赋值后就不能改变的变量。它帮助编译器检查代码中是否有尝试修改常量的错误,提升代码的健壮性。 2. `const`修饰局部变量:局部常量只能在定义时初始化,之后不能...

    static和const用法详解

    const限定变量的值不能被改变,而static限定变量或函数的作用域。例如,const int a = 10;定义了一个const变量a,它的值不能被改变,而static int a = 10;定义了一个static变量a,它的值可以被改变,但只能在定义它...

    C++ const应用总结

    `const`关键字用于声明常量变量,一旦赋值后,其值不能被改变。例如: ```cpp const int a = 5; // 声明一个整型常量a,值为5 ``` 在这种情况下,试图修改`a`的值会导致编译错误。 2. 函数参数: `const`可以...

    const知识点实例

    - `const`修饰的变量一旦初始化后,其值就不能再改变。例如:`const int a = 5;` - 如果常量未在声明时初始化,必须在声明时或块作用域内用常量表达式初始化,如:`const int b; // 错误,未初始化`;`const int c...

    const与指针的关系

    - 步骤2:`(int *(const (*p)))` 表明`*p`是一个不可改变的指向`int`类型的指针。 - 步骤3:`(int (*(const (*p))))` 再次确认了这一点。 - 结论:`*p`不能被改变,但可以通过`*(*p)`来修改其指向的`int`值,如`*...

    c语言之const用法

    Const 的目的是为了产生高质量的代码,提高代码的可读性,同时保护好不能被任意改变的内存,从而降低 Bug 的概率。 const 的用法总结 const 可以用来定义常量,修饰指针、函数的输入参数和返回值。const 的目的是...

    Const 用法小结

    在函数参数中,`const`通常用于指针或引用参数,特别是对于非内置类型,确保函数不会意外改变传入对象的状态。对于输入参数,如果使用值传递,通常不需要`const`修饰,因为会创建临时副本。总之,`const`是C++中一种...

    C++const关键字详解

    这里`cp`是一个指向`int`类型的`const`对象的`const`指针,既不能修改所指向的内容,也不能改变指向的地址。 通过合理利用`const`关键字,可以提高代码的安全性、可读性和性能。希望本文对C++中的`const`关键字的...

    C语言中const使用说明

    `const`可以用来声明常量,一旦赋值后就不能再改变。例如: ```c const int a = 10; // 声明一个整型常量a,值为10 ``` 尝试修改`a`的值将会导致编译错误。 2. 声明只读变量 `const`也可以用于声明只读变量,这意味...

    C++实现动态分配const对象实例

    尽管不能改变const对象的值,但可以删除动态创建的const对象,格式如下: delete p; 这个和普通的对象一样,可以对其进行删除操作。 三、应用场景举例 1、加载配置文件 从配置文件读入的数据可以用来初始化const...

    C/C++中CONST用法总结(推荐)

    通常,应该在不会改变数据的成员函数前加上`const`,以提供编译时的类型安全性。例如: ```cpp class TEMP { void func() const; // const成员函数,不会修改对象的成员变量 }; ``` 6. **const在函数声明中的...

    实验报告第三次1

    - 当const用在变量定义时,表示该变量是常量,其值不可改变。对于非指针类型,如`const int a = 12;`,a的值不能修改。对于对象,如`const student a(1, "张三");`,a的对象属性不可修改。 - 在指针前或指针类型前...

Global site tag (gtag.js) - Google Analytics