把const修饰的右边部分看成一个整体,例如int const *p就变成int const(*p),也就是const修饰的是指针指向的内容,所以内容不能改变即*p不能变,也就是不能用*p=4这种操作。int *const p相当于int *const (p),也就是const修饰的是指针p,指针p不能改变指向,所以p=&y这种操作不对。
2018-01-19
//const
#include <iostream>
using namespace std;
int main(void)
{
//定义常量count
int count = 3;
int *p = &count;
//打印count次字符串Hello C++
for(int i = 0; i < *p; i++)
{
cout << "Hello imooc" << endl;
}
system("pause");
return 0;
}
#include <iostream>
using namespace std;
int main(void)
{
//定义常量count
int count = 3;
int *p = &count;
//打印count次字符串Hello C++
for(int i = 0; i < *p; i++)
{
cout << "Hello imooc" << endl;
}
system("pause");
return 0;
}
实测int *q = p;也可以实现指针引用。
-------------------------
确定是引用不是赋值?
指针p 赋值给指针q
-------------------------
确定是引用不是赋值?
指针p 赋值给指针q
2018-01-05
//const
#include <iostream>
using namespace std;
int main(void)
{
//定义常量count
const int count = 3;
const int *p = &count;
//打印count次字符串Hello C++
for(int i = 0; i < 3; i++)
{
cout << "Hello imooc" << endl;
}
return 0;
}
#include <iostream>
using namespace std;
int main(void)
{
//定义常量count
const int count = 3;
const int *p = &count;
//打印count次字符串Hello C++
for(int i = 0; i < 3; i++)
{
cout << "Hello imooc" << endl;
}
return 0;
}