《vc++课件》静态成员和友元

静态成员
静态成员

士主受内容 静态成员的定义、初始化、调用 友元的作用和定义 第三章综合练习
◼ 静态成员的定义、初始化、调用 ◼ 友元的作用和定义 ◼ 第三章综合练习 主要内容

为什么需要静态成员 每个对象中min的值都等于10,在内存中有多 个副本,造成空间浪费,而且不易管理 onn Ca ane Tom idA1037528 dA2180150 idA5280175 pwd123456pwd6666lpwd654321 bal1750.55 bal501325 bal10000.25 min 10 min 10 min 10
为什么需要静态成员 id A1037528 pwd 123456 bal 1750.55 min 10 John id A2180150 pwd 666666 bal 5013.25 min 10 Cane id A5280175 pwd 654321 bal 10000.25 min 10 Tom ◼ 每个对象中min的值都等于10,在内存中有多 个副本,造成空间浪费,而且不易管理

John Ca ane Tom idA1037528 idA2180150 idA52801 75 pwd123456 pwd666666 pwd654321 bal175055 bal501325 bal10000.25 Account min 10 min不再占用多个对象的存储空间,而是 让各对象共享数据成员min的值,则内存中 min只有一个副本
Account min 10 id A1037528 pwd 123456 bal 1750.55 John id A2180150 pwd 666666 bal 5013.25 Cane id A5280175 pwd 654321 bal 10000.25 Tom min不再占用多个对象的存储空间,而是 让各对象共享数据成员min的值,则内存中 min只有一个副本

么是静恋成员 静态成员是解决同一个类的不同对象之间的数 据和函数共享问题 静态成员是类的所有对象共享的成员,而不是 某个对象的成员,它在对象中不占存储空间, 是属于整个类的成员 静态成员分为静态数据成员和静态成员函数 格式: static
◼ 静态成员是解决同一个类的不同对象之间的数 据和函数共享问题。 ◼ 静态成员是类的所有对象共享的成员,而不是 某个对象的成员,它在对象中不占存储空间, 是属于整个类的成员。 ◼ 静态成员分为静态数据成员和静态成员函数。 ◼ 格式: static ; 什么是静态成员

Account类静恋成员的定义 class account ublIc static void deposi() static void withdraw(); void display private static double min balance char pwd 6 double balance char
Account类静态成员的定义: class Account { }; static void deposit(); static void withdraw(); void display(); char id[8]; char pwd[6]; double balance; public: private: static double min_balance;

静态教据成员初始化 为什么要进行初始化 静态数据成员属于静态变量,必须 对其进行初始化后才能使用 何时进行初始化 静态变量不应该占用函数的空间, 且静态数据成员不能占用对象的存储空 间,因此一般在类的实现部分完成静态 数据成员的初始化
◼ 为什么要进行初始化 静态数据成员属于静态变量,必须 对其进行初始化后才能使用。 ◼ 何时进行初始化 静态变量不应该占用函数的空间, 且静态数据成员不能占用对象的存储空 间,因此一般在类的实现部分完成静态 数据成员的初始化。 静态数据成员初始化

士格式 :三; ∥ Account. cpp文件中的代码 #include # include“ Account . h double account: min balance=10;∥注意不要写错! ∥/实现“存钱”成员函数 void Account: deposit(...)
格式: #include #include “Account.h” //Account.cpp文件中的代码 void Account::deposit(……) { } //实现“存钱”成员函数 double Account::min_balance = 10; //注意不要写错! ::=;

静态成员巫数访问数据成员 八以前我们实现的“存钱”成员函 数 id Account: deposit( double amount) balance + amount cout<< Balance in your account is: <<balance<<endl 现在实现的静态“存钱”成员函数 void Account: deposit(double amount, Account a) a balance + amount cout<< Balance in your account is: <<a balance<<endl
静态成员函数访问数据成员 void Account::deposit(double amount) { balance += amount; cout<<“Balance in your account is :”<<balance<<endl; } //以前我们实现的“存钱”成员函 数 void Account::deposit(double amount, Account a) { a.balance += amount; cout<<“Balance in your account is :”<<a.balance<<endl; } //现在实现的静态“存钱”成员函数

∥/实现静态“取钱”成员函数 void Account: withdraw(double amount, Account a) if (amount >=min balance) cout<< There is not enough money in your account!<<endl exit a balance - amount cout<< Balance in your account is: <<a balance<<end\, 总结:静态成员函数可以直接访问该类的静态数据成员和成员 函数,但是要在静态成员函数中使用非静态成员时,要通过对 象来调用
{ a.balance -= amount; cout= min_balance) { cout<<“There is not enough money in your account!<<endl; exit(1); } //实现静态“取钱”成员函数 void Account::withdraw(double amount, Account a) 总结:静态成员函数可以直接访问该类的静态数据成员和成员 函数,但是要在静态成员函数中使用非静态成员时,要通过对 象来调用
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C++程序设计实验指导书》(第四版)电子课件.doc
- 《MATLAB》课程教学讲稿(PPT电子课件)第四讲 matlab 绘图.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第六讲 matlab工具箱.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第五讲 matlab句柄绘图.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第二讲 MATLAB的数值计算.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第三讲 MATLAB的符号运算.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第七讲 matlab的程序设计.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第一讲 MATLAB语言概述.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第9章 MATLAB符号计算.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第8章 MATLAB数值积分与微分.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第7章 MATLAB解方程与函数极值.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第6章 MATLAB数据分析与多项式计算.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第5章 MATLAB绘图.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第4章 MATLAB文件操作.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第3章 MATLAB程序设计.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第1章 MATLAB操作基础.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第13章 在Word环境下使用MATLAB.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第12章 Simulink动态仿真集成环境.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第11章 MATLAB图形用户界面设计.ppt
- 《MATLAB》课程教学讲稿(PPT电子课件)第10章 MATLAB图形句柄.ppt
- 《vc++课件》类的构造和析构.ppt
- 《vc++课件》虚函数和抽象类.ppt
- 《vc++课件》继承.ppt
- 《vc++课件》多继承和虚基类.ppt
- 《vc++课件》多态.ppt
- 《vc++课件》模板和IO流.ppt
- 《vc++课件》Windows编程基础.ppt
- 《vc++课件》单文档应用程序设计.ppt
- 《vc++课件》对话式应用程序设计.ppt
- 《vc++课件》c++基础1.ppt
- 《vc++课件》c++基础2.ppt
- 《vc++课件》类的设计和对象的使用.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第一章 C程序概述.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第二章 C程序设计基础.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第三章 程序的控制结构.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第四章 数组.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第五章 指针.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第六章 函数.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第七章 结构体与共用体.ppt
- 成都理工大学工程技术学院:《C程序设计教程》第八章 文件访问.ppt