当前位置:首页 > C++ > 正文内容

C++常量

admin2年前 (2020-12-09)C++1078

关于常量的一些形式以及含义在此记录一下:

#include <iostream>
using namespace std;

int main()
{
	//常量,不能改变值
	const int a = 1;
	cout << a << endl;

	//常量可以通过常量指针来引用
	const int b = 10;
	const int* ptr_b = &b;
	cout << *ptr_b << endl;

	//不能改变常量指针指向的变量的值,*ptr_c = 10这样是错误的,但是可以改变指针指向的地址
	int c = 100;
	const int* ptr_c = &c;
	ptr_c = &a;
	cout << *ptr_c << endl;

	//功能与上面一样
	int d = 1000;
	int const* ptr_d = &d;
	cout << *ptr_d << endl;
	ptr_d = &c;

	//指针常量,不能修改指针指向的地址,ptr_e = &c是错误的,但是可以修改指向的变量的值
	int e = 10000;
	int* const ptr_e = &e;
	*ptr_e = 9999;

	//指向常量的指针常量,不能修改指向的指针地址,亦不能修改指向的变量的内容,即*ptr_f = c;和ptr_f = 9999;是错误的
	int f = 1000000;
	const int* const ptr_f = &f;

	//功能与上面一样
	int g = 10000000;
	int const* const ptr_g = &g;
}


扫描二维码推送至手机访问。

版权声明:本文由lovedm.club发布,如需转载请注明出处。

本文链接:https://lovedm.club/?id=107

分享给朋友:

“C++常量” 的相关文章

C++计算程序运行的时间

最近在程序中有个读取文件的操作,想知道耗费的时间,查找之后大家都在用C++11中的库chrono,找了个能运行的现成写好的类:链接代码如下:#include <iostream> #include <chrono> using names...

C++ 计算点到空间直线的距离

最近的工作中需要计算空间中点到直线的距离,网上找了个算法:链接很简单,就是余弦定理算出余弦,知道余弦算出正弦,然后求出高也就是距离。当然这里不考虑效率问题,实验性的代码,先能用再优化。struct Point {     double ...

C++ 派生类的析构函数的执行顺序

C++ 派生类的析构函数的执行顺序

C++中派生类是不会继承父类的构造函数和析构函数的,这一点要明确。派生类中构造函数的执行顺序是先父类的构造函数然后当前类,析构函数则相反。举例如下:#include <iostream> using namespace std; class&nb...

GDAL构建Delaunay三角网

GDAL能创建Delaunay三角网我是没想到的,需要包含头文件gdal_alg.h使用GDALTriangulationCreateDelaunay函数,函数说明在此 ,三个参数:第一个是点的个数,第二三个分别是点的X坐标和点的Y坐标。返回值是GDALTriangulation* 类型的...

OpenCV中简单的添加噪声

随机数生成器用到的是C++11中的新方法。以下代码来自OpenCV计算机视觉编程攻略第三版2.2.2节void salt(Mat image, int n) { default_random_engine generator; unifor...