关闭

请说出static和const关键字尽可能多的作用

标签: staticconst作用于区别
1027人阅读 评论(0) 收藏 举报
分类:

请说出static和const关键字尽可能多的作用


static关键字至少有下列n个作用:

(1) 函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值;
(2) 在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问;
(3) 在模块内的static函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明它的模块内;
(4) 在类中的static成员变量属于整个类所拥有,对类的所有对象只有一份拷贝;
(5) 在类中的static成员函数属于整个类所拥有,这个函数不接收this指针,因而只能访问类的static成员变量。

const关键字至少有下列n个作用:

(1) 欲阻止一个变量被改变,可以使用const关键字。在定义该const变量时,通常需要对它进行初始化,因为以后就没有机会再去改变它了(2) 对指针来说,可以指定指针本身为const,也可以指定指针所指的数据为const,或二者同时指定为const;
(3) 在一个函数声明中,const可以修饰形参,表明它是一个输入参数,在函数内部不能改变其值;
(4) 对于类的成员函数,若指定其为const类型,则表明其是一个常函数,不能修改类的成员变量;
(5) 对于类的成员函数,有时候必须指定其返回值为const类型,以使得其返回值不为“左值”。例如:

const classA operator*(const classA& a1,const classA& a2);

operator*的返回结果必须是一个const对象。如果不是,这样的变态代码也不会编译出错:

classA a, b, c;
(a * b) = c; // 对a*b的结果赋值

操作(a * b) = c显然不符合编程者的初衷,也没有任何意义。

1
0
查看评论
发表评论
* 以上用户言论只代表其个人钱柜娱乐开户,不代表CSDN网站的钱柜娱乐开户或立场

Java关键字final、static、abstract使用总结

一、final 根据程序上下文环境,Java关键字final有“无法改变”或者“终态”的含义,它可以修饰非抽象类、非抽象类成员方法和变量。final类不能被继承,没有子类,final类中的方法默认...
  • u013842976
  • u013842976
  • 2016-05-10 13:48
  • 1353

Java中static关键字的作用

Java中static关键字的作用
  • jsqfengbao
  • jsqfengbao
  • 2015-03-29 08:45
  • 16414

JAVA中的关键字static,final和const

一、static 1.static修饰变量 C的局部变量,全局变量(即外部变量)和静态变量 局部变量:在函数内定义的变量,采用动态存储方式。 全局变量:在函数外定义的变量,采用静态存储方式。 exte...
  • cwdysg
  • cwdysg
  • 2017-03-09 08:41
  • 2917

请说出static和const关键字尽可能多的作用

解答】  static关键字至少有下列n个作用:    (1)函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值;   ...
  • xiaofeng_sunshine
  • xiaofeng_sunshine
  • 2016-09-04 20:13
  • 108

请说出static和const关键字尽可能多的作用

static关键字至少有下列n个作用:    (1)函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值;    (2)在...
  • sxs11
  • sxs11
  • 2017-08-02 17:07
  • 72

请说出static和const关键字尽可能多的作用

参考答案 【解答】 static关键字至少有下列n个作用:   (1)函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次...
  • xiaominkong123
  • xiaominkong123
  • 2016-01-11 21:52
  • 262

static和const关键字尽可能多的作用

static和const关键字尽可能多的作用   解答:   static关键字至少有下列n个作用:   (1)函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一...
  • futurepeter
  • futurepeter
  • 2011-07-20 16:51
  • 338

20170327_请说出C++中继承的概念

20170327_请说出C++中继承的概念
  • cmm0401
  • cmm0401
  • 2017-03-27 10:15
  • 682

20170330_请说出TCP连接为什么要采用三次握手两次不行么?

20170330_请说出TCP连接为什么要采用三次握手两次不行么?
  • cmm0401
  • cmm0401
  • 2017-03-30 09:31
  • 626

java中有几种类型的流 JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类

在java.io包中还有许多其他的流,主要是为了提高性能和使用方便。C/C++只能提供字节流。Java中的流分为两种,一种是字节流,另一种是字符流,分别由四个抽象类来表示(每种流包括输入和输出两种所以...
  • desktable
  • desktable
  • 2014-01-16 10:29
  • 712
    个人资料
    • 访问:344509次
    • 积分:6687
    • 等级:
    • 排名:第4143名
    • 原创:315篇
    • 转载:40篇
    • 译文:0篇
    • 评论:60条
    钱柜娱乐开户
    最新评论