自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 C++ 类模板对象做函数参数

首先我们来创建一个类模板template<class T1, class T2>class person{public: person(T1 name , T2 age) { m_name = name; m_age = age; } void showperson() { cout << m_name << " " << m_age << endl;

2021-03-25 19:34:02 131

原创 C++ 模板的局限性示例以及解决方法

局限性是指模板的通用性不是万能的;template<class T>void f(T a, T b){ a = b;}上述的代码中提供的赋值操作,如果传入的a 和 b 是数组,那么是无法实现的。再比如下面的代码,如果传入类,也是无法实现的。我们先来看下这个类class person{public: person(string name) { this->m_name = name; } string m_nam

2021-03-25 17:10:18 167

原创 C++ 函数模板之 函数模板的使用举例

1.如果函数模板和普通函数都可以调用,优先调用普通函数2.可以通过空模板参数列表强制调用函数模板3.函数模板可以发生函数重载4.如果函数模板可以产生更好的匹配,优先调用函数模板// 1.如果函数模板和普通函数都可以调用,优先调用普通函数// 2.可以通过空模板参数列表强制调用函数模板// 3.函数模板可以发生函数重载// 4.如果函数模板可以产生更好的匹配,优先调用函数模板#include<iostream>using namespace std;void myprint(i

2021-03-24 23:03:53 103

原创 普通函数和函数模板的区别

1.如果函数模板和普通函数都可以调用,优先调用普通函数2.可以通过空模板参数列表强制调用函数模板3.函数模板可以发生函数重载4.如果函数模板可以产生更好的匹配,优先调用函数模板#include<iostream>using namespace std;int myadd01(int a, int b){ return a + b;}template<class T>T myadd02(T a, T b){ return a + b;}voi

2021-03-24 22:29:10 107

原创 C++ 函数模板举例

1.如果函数模板和普通函数都可以调用,优先调用普通函数2.可以通过空模板参数列表强制调用函数模板3.函数模板可以发生函数重载4.如果函数模板可以产生更好的匹配,优先调用函数模板

2021-03-24 22:17:21 59

原创 C++ string对象上的操作

string 的操作os << s 将s 写入到输出流os当中,返回os;is >> s 将is中读取字符串赋给s,字符串以空白分隔,返回is;getline(is,a) 从is中读取一行赋给s,返回is;s.empty() s为空返回true,否则返回false;s[n] 返回s中第n 个字符的引用,位置n从0计起;s1+s2

2021-03-24 20:24:17 48

原创 C++ 进阶 2

具体的功能实现在workermanager.cpp文件中#include"workermanager.h" //添加对应的头文件WorkerManager::WorkerManager() // WorkerManager的构造函数{ // the file doesn't exit ifstream ifs; // 创建数据流 ifs.open("test1",ios::in); // 打开文件 if(!ifs.is_open()) //判断是否可以

2021-03-24 09:55:16 154

原创 C++ 进阶之实现公司员工管理系统1

本次系统实现的功能有1.退出系统2.添加员工3.将所有员工信息显示在屏幕上4.删除员工5.修改员工信息6.查找员工信息7.按照员工工号进行排序8.格式化文件的数据下图代码为本次管理系统的主函数部分#include"workermanager.h"using namespace std;#include<iostream>#include"worker.h"#include"employee.h"#include"manager.h"#include"boss.h"

2021-03-17 21:38:56 344

原创 C++文件操作之写二进制文件

以二进制方式对文件进行读写操作,打开方式要指定为ios::binary二进制写文件主要利用流对象调用成员函数 write函数原型:ostream & write(const char * buffer , int len);参数解释:字符指针buffer 指向内存中一段存储空间,len是读写的字节数。具体示例如下:#include<iostream>using namespace std;#include<fstream>class person{pub

2021-03-16 08:47:55 123

原创 c++ 文件操作之读文件

读文件与写文件步骤类似,但是读取方式相对于比较多读文件步骤如下:1.包含头文件#include< fstream >2.创建流对象ifstream ifs;3.打开文件并判断文件是否打开成功。ifs.open("文件路径”,打开方式);4.读数据四种方式读取1)第一种方式:创建一个字符串数组,只要有输入流,就把字符串数组输出。2)第二种方式:创建一个数组,然后利用getline函数,进行while判断,getline函数的原型std::istream &std

2021-03-16 08:14:26 214

原创 C++ 文件操作之写文件

**程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放,通过文件可以将数据持久化**C++ 对文件操作需要包含头文件 < fstream >文件类型分为两种:文本文件和二进制文件。1.文本文件:文件以文本的ASCII码形式存储在计算机中。2.二进制文件:文件以文本的二进制形式存储在计算机中,用户一般不能直接读懂它们。操作文件的三大类1.ofstream : 写操作2.ifstream : 读操作3.fstream : 读写操作一、文本文件1.写文.

2021-03-15 19:09:40 608

原创 C++ 静态成员

静态成员静态成员就是在成员变量和成员函数前加上关键字 static 称为静态成员。静态成员分为:静态成员变量和静态成员函数注意!!!对于静态成员变量来说:1)所有对象共享同一份数据;2)在编译阶段分配内存;3)类内声明,类外初始化。对于静态成员函数来说:1)所有对象共享同一函数;2)静态成员函数只能访问静态成员变量。#include<iostream>using namespace std;class person{public: static void

2021-03-13 17:10:16 43

原创 C++ 仿函数

#include<iostream>using namespace std;#include<string>class Myprint{public: void operator()(string test) { cout << test << endl; }};class myadd{public: int operator()(int a, int b) { r

2021-03-12 22:12:48 70

原创 C++ 运算符重载赋值运算符

#include<iostream>using namespace std;class person{public: person(int age) { m_age = new int(age); } int *m_age; ~person() { if (m_age != NULL) { delete m_age; m_age = NULL;

2021-03-12 22:10:36 42

原创 C++ 符号重载 递增运算

“++ 变量” 的重载#include<iostream>using namespace std;class number{ friend ostream & operator<<(ostream & cout, number &p);public: number() { m_a = 0; m_b = 1; } number & operator++() {

2021-03-12 22:08:16 44

原创 C++ 运算符重载左移运算

#include<iostream>#include<string>using namespace std;class person{ friend ostream & operator<<(ostream &cout, person &p);public: person(int a,int b) { m_a = a; m_b = b; }private: in

2021-03-12 22:04:52 50

原创 C++运算符重载 加号运算

c++运算符重载功能可以,将平常使用的运算符赋予新的功能,其关键字为 operator ,格式为:类型名 operator 运算符( 变量类型 变量,变量类型 变量)示例1.在全局变量使用运算符重载#include<iostream>using namespace std;;class person{// public: // person operator+(person & p) // { // person temp; //

2021-03-12 12:54:21 134

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除