HelloWorld

ASM,C,LUA,LINUX(gentoo)
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

static

Posted on 2011-09-19 14:35  光铭  阅读(130)  评论(0编辑  收藏  举报

用static 修饰的变量不能再另外的文件中用extern 共享

在类中,静态成员函数是为全体类对象所共享的,没有this指针

静态数据成员,除过static const int 意外,都必须在类外面进行赋值初始化,否则编译器不会为其分配空间,编译通过,链接会出现外部错误。而对于static const int,编译器会将其视为一个符号,不占用内存空间,可以在类中申明的时候进行初始化。 在类外面进行定义时需要加上类型,但无需再写static;

静态成员可以访问静态成员,不能访问非静态成员,因为没有this指针。非静态成员当然可以访问静态成员了。

虽然没有this指针但是由于逻辑上的关系,可以用成员访问操作符.和->访问。

static设计出来是为了为整个类服务,又不破坏类得封装性,即要求成员隐藏在类得内部,对外部不可见。

在类中所有函数和静态量都是所有对象共享的,不占据具体对象的内存。