类的静态成员(外加 头文件.h和实现文件.cpp的用法)
2013-05-08 13:16
267 查看
静态成员变量最一般的作用就是对一些共享资源提供存取控制,减少全局变量的使用.
Student.h:
#include <iostream.h>
#include <string.h>
class Student
{
private:
int number;
char *name;
float score;
static int count;
static float sum;
public:
Student(int number1,char *name1,float score1);
~Student();
void modify(float score1)
{
score = score1;
}
void print();
};
Student.cpp:
#include <string>
#include "Student.h"
#include <iostream>
using namespace std;
Student::Student(int number1,char *name1,float score1)
{
number = number1;
name = new char[strlen(name1)+1];
strcpy(name,name1);
score = score1;
count++;
sum+=score;
}
Student::~Student()
{
delete []name;
count--;
}
void Student::print()
{
std::cout<<"number:"<<number<<" name:"<<name<<" score:"<<score<<" count:"<<count<<endl;
}
int Student::count=0;
float Student::sum=0;
main.cpp:
#include "Student.h"
#include <iostream>
using namespace std;
int main()
{
Student stu1(1,"Bill",77);
stu1.print();
Student stu2(2,"Adam",88);
stu2.print();
Student stu3(3,"David",99);
stu3.print();
return 0;
}源码布局:
程序执行:
Student.h:
#include <iostream.h>
#include <string.h>
class Student
{
private:
int number;
char *name;
float score;
static int count;
static float sum;
public:
Student(int number1,char *name1,float score1);
~Student();
void modify(float score1)
{
score = score1;
}
void print();
};
Student.cpp:
#include <string>
#include "Student.h"
#include <iostream>
using namespace std;
Student::Student(int number1,char *name1,float score1)
{
number = number1;
name = new char[strlen(name1)+1];
strcpy(name,name1);
score = score1;
count++;
sum+=score;
}
Student::~Student()
{
delete []name;
count--;
}
void Student::print()
{
std::cout<<"number:"<<number<<" name:"<<name<<" score:"<<score<<" count:"<<count<<endl;
}
int Student::count=0;
float Student::sum=0;
main.cpp:
#include "Student.h"
#include <iostream>
using namespace std;
int main()
{
Student stu1(1,"Bill",77);
stu1.print();
Student stu2(2,"Adam",88);
stu2.print();
Student stu3(3,"David",99);
stu3.print();
return 0;
}源码布局:
程序执行:
相关文章推荐
- C++ 类静态数据成员除了要声明外,还要在类实现文件中进行定义。
- 转—gcc指定库路径,头文件路径以及实现静态动态链接
- cocos2dx jni Android.mk配置,实现自动搜索.cpp文件打包
- File类输入输出流的重要用法及文件搜索器的简易实现
- 回调函数的C++ 封装(非静态成员函数的回调函数实现方法)
- .net html 静态页面 Post 上传文件用法
- 每日一个C++小程序(十二)--具有静态数据、函数成员的Point类,多文件组织
- Centos下让nginx支持.htaccess文件实现伪静态的方法!
- nodejs实战:使用原生nodeJs模块实现静态文件及REST请求解析及响应(基于nodejs6.2.0版本,不使用express等webMVC框架 )
- Linux下nginx支持.htaccess文件实现伪静态的方法!
- 静态成员函数和static的作用及用法
- ThinkPHP实现文件伪静态
- inotify用法简介及结合rsync实现主机间的文件实时同步
- 关于头文件写类成员函数实现,编译时报“重复定义的符号”
- JavaScript中的公有、私有、特权和静态成员用法分析
- 实现一个so库文件名称为libupper.so提供给c/cpp调用
- 解决qt中ui界面中有对象名,cpp文件中还是显示没有成员的方法
- 嵌入式开发之C++基础学习笔记5--静态成员,友元,运算符重载,模板,文件流
- cpp-netlib笔记二:实现http文件服务功能
- 语法分析表产生器的代码之三:自定义类的实现函数文件implement_syntax.cpp