C++ int const 和 const int 的区别

  1. 如果对象不是针对,它们没有区别
int const x = 3;
const int x = 3;
  1. 如果对象是指针,它们有区别
    int* const p = &array: 指针p不能够指向其他地址
    const int* p = &array: 指针p只读&array,不能够对其进行修改

举例,

#include <iostream>
 
using namespace std;

int main()
{
	int arr[3]={1,2,3};
	int varr[3]={100,200,300};
	const int* p1 = arr;
	int* const p2 = arr;

	cout << *p1 << endl;
	cout << *p2 << endl;

	// *p1 = 22; // error
	*p2 = 22;
	cout << *p2 << endl;
	cout << arr[0] << endl;

	p1 = varr;
	cout << *p1 << endl;

	p2 = varr;//error
	return 0;
}
posted @   2021年的顺遂平安君  阅读(7891)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 字符编码:从基础到乱码解决
历史上的今天:
2017-12-25 NASA CEA 安装指南
2017-12-25 NASA CEA 安装指南
点击右上角即可分享
微信分享提示