博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
const、static、const static、static const关键字的初始化
阅读量:4092 次
发布时间:2019-05-25

本文共 1265 字,大约阅读时间需要 4 分钟。

#include 
using namespace std;/* * 规则: * 1、static 变量:声明在类中,定义赋值在类外 * 2、const 变量:由于要进入符号表,在类中声明的时候就得赋值定义 * 3、const static:在类外赋值的时候去掉static关键字 * (1)某些类型:char,short,int,long可以选择方式1 or 2 * (2)某些类型:float、double 选择方式1,必须在类外赋值定义 * 4、static const:在类外赋值的时候去掉static关键字 * (1)某些类型:char,short,int,long可以选择方式1 or 2 * (2)某些类型:float、double 选择方式1,必须在类外赋值定义*/class A {
public: const static int num1; // const static 第(1)种类型声明 const static int num2 = 2; // const static 第(2)种声明和初始化 const int num3 = 3; static int num4; const static float num5; // 只能在类外面初始化,数据类型限:float double static const int num6 = 6; // 声明和初始化 static const float num7; // 声明 A():num3(3333) {
// this->num3 = 6666666; 错误的方式 // 初始化列表可以覆盖const 类型的值。加了static不属于类,不可以构造函数初始化。 }};const int A::num1 = 1; // const static(1)类型定义并初始化//const int A::num2 = 2222222; // 定义并初始化,和第10行二选一,数据类型限:char short int longint A::num4 = 4;const float A::num5 = 5; // 只能在类外面初始化,数据类型限:float doubleconst float A::num7 = 7; // 只能在类外面初始化,数据类型限:float doubleint main(){
cout << A::num1 << endl; cout << A::num2 << endl; A a; cout << a.num3 << endl; cout << A::num4 << endl; cout << A::num5 << endl; cout << A::num6 << endl; cout << A::num7 << endl; return 0;}

转载地址:http://decii.baihongyu.com/

你可能感兴趣的文章
程序设计方法概述:从面相对象到面向功能到面向对象
查看>>
数据库事务
查看>>
JavaScript基础1:JavaScript 错误 - Throw、Try 和 Catch
查看>>
SQL基础总结——20150730
查看>>
SQL join
查看>>
JavaScript实现页面无刷新让时间走动
查看>>
CSS实例:Tab选项卡效果
查看>>
前端设计之特效表单
查看>>
前端设计之CSS布局:上中下三栏自适应高度CSS布局
查看>>
Java的时间操作玩法实例若干
查看>>
JavaScript:时间日期格式验证大全
查看>>
pinyin4j:拼音与汉字的转换实例
查看>>
XML工具代码:SAX从String字符串XML内获取指定节点或属性的值
查看>>
时间日期:获取两个日期相差几天
查看>>
责任链模式 Chain of Responsibility
查看>>
高并发与大数据解决方案概述
查看>>
解决SimpleDateFormat线程安全问题NumberFormatException: multiple points
查看>>
MySQL数据库存储引擎简介
查看>>
处理Maven本地仓库.lastUpdated文件
查看>>
Kafka | 请求是怎么被处理的?
查看>>