变量的定义 声明和初始化和static
1.声明:
定义性声明:
int a;
引用性声明:
extern int a;
2.定义
int a;
3.初始化
a = 10;
一般的情况下,我们把建立空间的声明称之为定义.
而把不需要建立存储空间的声明称之为声明。
4.讲一讲static
1.static修饰局部变量:
变量分配在静态数据区
2.static修饰全局函数和全局变量
作用域在本文件内部
3.修饰类的成员变量
用A::a这种来调用,必须手动初始化
class A
{
private:static int a;
};
int A:: a = 1;
4.修饰类的成员函数:
静态成员函数只能调用静态成员(函数或者变量)
5.静态成员函数可以重定义吗?
可以
class A
{
public:static int a;static void print() { cout << "static print" << endl; }
};class AA :public A
{
public:static void print() { cout << "AA static print" << endl; }
};class AAA : public A
{
public:void print {cout << "AAA" << endl;}}
当然,你也可以用非静态的成员函数重定义
6.静态成员函数可以是虚函数吗?
不能,因为静态成员函数没有this指针
7.重载和重写:
重载:一个作用域内(一个cpp中,一个类中)函数名相同,参数列表不同
重写:子类覆盖父类的虚函数
重定义:重写以外的
变量的定义 声明和初始化和static相关推荐
- C++:重定义:符号重定义:变量重定义(二):解决变量重定义(const static)
C++:重定义:符号重定义:变量重定义_hongwen_yul的博客-CSDN博客 上一篇文章中,我们知道解决变量重复定义其中一个办法是:尽量不要头文件中定义变量,头文件只做变量的声明.但是如果我们一 ...
- 【结构体】结构变量的定义与初始化
1.结构变量的定义 声明了结构类型后,还需要定义结构变量,以便在程序中引用它. 结构变量和其他变量一样,必须先定义后使用 (1)先定义结构类型,再定义结构变量 struct books { int b ...
- 函数中的声明和变量的定义
函数中的声明和变量的定义 声明与定义比较 前向引用 函数属性 内部/内嵌函数 函数应用:打印图形和数学计算 变量作用域 全局变量与局部变量 局部变量 全局变量 globa语句 可变类型的全局变量 声明 ...
- 面试准备每日五题:C++(一)——变量定义声明、#ifdef #else、结构体赋值、sizeof strlen、C和C++的static
文章目录 1 变量的声明和定义有什么区别? 2 简述#ifdef.#else.#endif和#ifndef的作用 3 结构体可以直接赋值吗? 4 sizeof 和strlen 的区别 5 C 语言的关 ...
- C++ static、const和static const类型成员变量声明及其初始化
C++ static.const和static const类型成员变量声明及其初始化 const定义的常量在超出其作用域之后其空间会被释放,而static定义的静态常量在函数执行后不会释放其存储空间. ...
- 变量的声明、变量的定义、变量的初始化
变量的声明:用于向程序表明变量的类型和名字. 变量的定义:用于为变量分配存储空间,还可以为变量指定初始值. 变量的初始化:为变量指定初始值. 广义上来说,变量的声明有两种情况: 1.需要建立存储空间的 ...
- C++ 笔记(05)— 变量(变量定义、声明、初始化、extern关键字、变量之间转换)
1. 变量定义 变量定义就是告诉编译器在何处创建变量的存储,以及如何创建变量的存储.变量定义指定一个数据类型,并包含了该类型的一个或多个变量的列表,如下所示: type variable_list; ...
- C++ 语言变量的定义、声明和初始化
C++ 语言变量的定义.声明和初始化 1. 定义变量 每种变量都存储一种特定的数据,在定义了变量后,它可以存储的数据类型就是固定的.存储整数的变量,就不能存储小数. 1.1 命名变量 变量的名称可以是 ...
- c语言程序中变量先引用声明,C语言如何跨文件调用函数定义中声明的变量
变量的作用域 我们知道,变量根据其作用域有全局变量和局部变量之分.全局变量作用域是整个文件,并且可以使用关键字 extern 达到跨文件调用的目的.但是局部变量值作用于它当前所在的块(即该变量所处最内 ...
最新文章
- 句法依存分析_[NLP学习笔记]句法分析
- 线程安全操作HashMap
- Kubernetes 已经成为云原生时代的安卓,这就够了吗?
- Python基础教程:函数名本质
- Google Maps API编程资源大全
- java中所有函数都是虚函数_关于Java:虚拟函数与纯虚函数之间的区别是什么?...
- WLAN产品形态之分层架构
- 力扣(LeetCode)258. 各位相加
- 软件架构(10)---java资深架构师分布式技术分享
- JAVA和JAVAC 命令行
- IGBT的绘制与逆变器的绘制-Visio制图总结【电控类】(三)
- 程序员10大修炼之道,学会这些月入百万不是梦
- RGB888转换为RGB565格式
- react兼容safari9_react项目兼容ie浏览器配置
- html标签blockquote,HTML中的blockquote标签怎么用
- MIPS汇编程序设计——Cousera
- 解决ThinkPad E580因AMD显卡导致系统崩溃的问题
- VBA生成KML文件
- 5G和MEC在工业互联网中的应用探讨
- 学习笔记25马氏链模型
热门文章
- android 源码下载编译
- JSP学习笔记(四十九):抛弃POI,使用iText生成Word文档
- 轻松搭建博客平台-开源ASP.NET 博客Subtext 的安装
- 死磕 java集合之TreeMap源码分析(一)——红黑树全解析
- 一个有趣的Script脚本工具
- 去掉windows console application的dos显示
- RAC环境下的备份与恢复(二)
- 《当程序员的那些狗日日子》(五)工作中,工作外
- tomcat and server configuration for loadrunner test
- 关于上个Flex-Jsp-DB例子中Flex和Jsp传递中文参数问题的解决方法!(Tomcat服务器)...