备考2020年全国计算机二级考试的小伙伴们,复习的都怎么样了呢?树图网小编整理了2020年全国计算机二级C++复习知识点供大家参考复习,小伙伴们快来看看,测试一下自己吧!了解更多全国计算机二级考试敬请关注树图网计算机二级频道。
树图思维导图提供 2020年全国计算机二级C++复习知识点:静态成员2 在线思维导图免费制作,点击“编辑”按钮,可对 2020年全国计算机二级C++复习知识点:静态成员2 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:ea40f4ef6ab089d69cb701d9a5acc626
2020年全国计算机二级C++复习知识点:静态成员2思维导图模板大纲
可以把类的成员声明为静态的。静态成员只能存在一的实例。所有的成员函数都可以访问这个静态成员。即使没有声明类的任何实例,静态成员也已经是存在的。不过类当中声明静态成员时并不能自动定义这个变量,必须在类定义之外来定义该成员。
成员函数也可以是静态的。如果一个静态成员函数不需要访问类的任何实例的成员,可以使用类名或者对象名来调用它。静态成员通常用在只需要访问静态数据成员的情况下。
静态成员函数没有this指针,因为它不能访问非静态成员,所以它们不能把this指针指向任何东西。
下面的程序中,ListEntry类中加入了一个静态成员函数FirstEntry(),它从数据成员firstentry获得链表项的地址,在这儿,firstentry已经声明为私有数据成员了。
#include iostream.h
#include string.h
class ListEntry
static ListEntry* firstentry;
static ListEntry* lastentry;
char* listvalue;
ListEntry* nextentry;
public:
ListEntry(char*);
~ListEntry() { delete [] listvalue;}
static ListEntry* FirstEntry() { return firstentry; }
ListEntry* NextEntry() const { return nextentry; };
void display() const { cout < };
ListEntry* ListEntry::firstentry;
ListEntry* ListEntry::lastentry;
ListEntry::ListEntry(char* s)
if(firstentry==0) firstentry=this;
if(lastentry!=0) lastentry- >nextentry=this;
lastentry=this;
listvalue=new char[strlen(s)+1];
strcpy(listvalue, s);
nextentry = 0;
int main()
while (1)
cout <<\nEnter a name ('end' when done):;
char name[25];
cin >> name;
if(strncmp(name,end,3)==0) break;
new ListEntry(name);
ListEntry* next = ListEntry::FirstEntry();
while (next != 0)
next- >display();
ListEntry* hold = next;
next = next- >NextEntry();
delete hold;
return 0;
函数ListEntry::FirstEntry()是静态的,返回静态数据成员firstentry的值。
树图思维导图提供 904名中国成年人第三磨牙相关知识、态度、行为和病史的横断面调查 在线思维导图免费制作,点击“编辑”按钮,可对 904名中国成年人第三磨牙相关知识、态度、行为和病史的横断面调查 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:10b9a8a2dd2fb4593f8130ef16c320fc
树图思维导图提供 销售经理半年规划 在线思维导图免费制作,点击“编辑”按钮,可对 销售经理半年规划 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:e614d6bcf03e9318109240a18697c5d1