必须定义const常量的时候赋值
#include <iostream>
using namespace std;
int main() {
const int age = 10;
age = 20; //这里报错,不能改变
getchar();
return 0;
}
结构体声明与变量定义,加上const
#include <iostream>
using namespace std;
struct Date { //声明结构体
int year;
int month;
int day;
}
int main() {
const Date d = {2011, 2, 5}; //定义结构体变量,声明常量
d.year = 2015; //这里报错,不能修改
//struct Date d = {2011, 2, 5}; C语言需要加上关键词struct来定义
getchar();
return 0;
}
结构体赋值结构体
#include <iostream>
using namespace std;
struct Date { //声明结构体
int year;
int month;
int day;
}
int main() {
Date d = {2011, 1, 1}; //定义结构体变量
Date d2 = {2013, 3, 3};
d = d2; //结构体赋值结构体
getchar();
return 0;
}
指针指向结构体,修改成员
#include <iostream>
using namespace std;
struct Date { //声明结构体
int year;
int month;
int day;
}
int main() {
Date d1 = {2011, 1, 1}; //定义结构体变量
Date d2 = {2013, 3, 3};
Date *p = &d1; //指针指向结构体d1
p->year = 2015;
(*p).month = 5;
*p = d2;
cout << d1.year << endl;
getchar();
return 0;
}
指针;const只修饰右边的整体
int * const p3 = &age; //p3是常量;*p3不是常量,可以赋值
*p3 = 20; //age=20;
p3 = &height; //是常量,报错
*p3 = 40; //height=40;