定义了头文件#include<vector>
#include"Student.h"
#ifndef DB_TONY
#define DB_TONY
using namespace std;
class DB
{
public:
static vector<Student> v;
void insert(Student stu);
vector<Student> query(Student stu);
vector<Student> query();
void del(Student stu);
Student getStu(int id);
};
#endif
也定义了student.cpp 的实现类
但是在其他地方只要是引用 静态类型v 编译都会报错,感觉很奇怪实在不知道是什么原因 ,通过一次次代码测试最后在实现类中#include "DB.h"
#include"Student.h"
#include <vector>
#include <iterator>
/**
这里是原先没有的
*/
vector<Student> DB::v;
void DB::del(Student stu)
{
vector<Student>::iterator itStart=v.begin();
vector<Student>::iterator itEnd=v.end();
for(;itStart!=itEnd;++itStart)
{
Student s=*itStart;
if(s.getId()==stu.getId())
{
v.erase(itStart);
}
}
}
void DB::insert(Student stu)
{
v.push_back(stu);
}
vector<Student>DB:: query()
{
return v;
}
vector<Student>DB::query(Student stu)
{
vector<Student> vTemp;
return vTemp;
}
Student DB::getStu(int id)
{
Student *st=NULL;
vector<Student>::iterator itStart=v.begin();
vector<Student>::iterator itEnd=v.end();
for(;itStart!=itEnd;++itStart)
{
Student s=*itStart;
if(s.getId()==id)
{
return s;
}
}
return *st;
}
静态类型的对象必须要在实现中从新定义才可以使用
分享到:
相关推荐
C++中Static的使用方法 入门级文献,看好细则,避免奇怪的报错
C++ static 用法总结C++ static 用法总结
C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。
你知道静态变量吗?你知道static的用法吗?你知道使用static时的注意事项吗?不知道不要紧,请阅读这篇文档
NULL 博文链接:https://jacky-dai.iteye.com/blog/951833
C++的static关键字.doc 搞不清c++的static关键字的用法的可以看看
本文详细介绍了static关键字在C++中的作用和原理,并通过充分的代码示例进行了说明,帮助读者深入理解并正确使用static关键字。 `static`关键字在C++中的使用确实涉及到多个方面,包括局部变量的存储期、全局变量和...
一、关于staticstatic 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性,下面我将从 static 修饰符的产生原因、作用谈起,全面分析static 修饰符的实质。 static 的两大作用: 一、控制存储方式 static...
主要介绍了c++中static的用法详解,C 语言的 static 关键字有三种用途,具体内容详情大家跟随脚本之家小编一起学习吧
本篇文章是对C/C++中的static与extern关键字的使用进行了详细的分析介绍,需要的朋友参考下
全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。 这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域...
在这里我们就为大家详细介绍一下C++ static关键字的使用方法,让大家进一步对这一语言有一个深入的解读。
static和const是C++程序设计中非常重要的概念,本文实例列举了C++类中的static和const的规则和用法。供大家参考借鉴。具体说明如下: 首先以代码用来举例说明。示例代码如下: class A { public: A():m(10) //...
static关键字是C, C++中都存在的关键字, 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同, 本文以C++为准). (1)局部静态变量 (2)外部静态变量/函数 (3)静态...
static关键字是C, C++中都存在的关键字, 它主要有三种使用方式, 其中前两种只指在C语言中使用, 第三种在C++中使用(C,C++中具体细微操作不尽相同, 本文以C++为准). (1)局部静态变量 (2)外部静态变量/函数 (3)...
以下是对static在C和C++中的用法以及区别进行了详细的分析介绍。需要的朋友可以过来参考下
const,extern,static,volatile的使用
讲述了static,extern及全局变量的用法,通过实例讲解,上机运行通过,放心使用
本文用示例讲解了dynamic_cast、static_cast子类与基类之间转换功能的使用方法