- 博客(21)
- 资源 (6)
- 收藏
- 关注
原创 C++004进阶
6、 函数模板和类模板 前言 C++提供了函数模板(functiontemplate)。所谓函数模板,实际上是建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表。这个通用函数就称为函数模板。凡是函数体相同的函数都可以用这个模板来代替,不必定义多个函数,只需在模板中定义一次即可。在调用函数时系统会根据实参的类型来取代模板中的虚拟类型,从而实现了不同函数的功能。 1)
2016-04-22 16:33:49
3260
1
原创 C++003基础
1、C++对C的扩展 1简单的C++程序 1.1求圆的周长和面积 数据描述: 半径,周长,面积均用实型数表示 数据处理: 输入半径 r; 计算周长 = 2*π*r ; 计算面积 = π* r2 ;
2016-04-22 16:20:59
3918
原创 C++002常见设计模式
饿汉式的单例模式 1.1 问题 单例模式使用私有构造函数的方法禁止在类外部创建实例,而类自己使用静态成员变量的方法来维护其唯一实例,并提供访问该实例的方法。 饿汉式单例模式的优点是加载进程时静态创建单例对象,线程安全;缺点是无论使用与否,总要创建一个实例。 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:饿汉式的单例模式 代码如下: #i
2016-04-22 14:53:17
395
原创 C++001--字符串
1.字符串的基本用法 1.1 问题 字符串的基本用法主要是指字符串类对象的定义与初始化方法。 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:字符串的实例化 代码如下所示: #include iostream>int main(int argc, const char * argv[]){ std::string str;
2016-04-22 10:40:18
1377
原创 数据结构与算法--查找与排序(二)
===================================================== 1.选择排序.c #include "stdio.h" #include "stdlib.h" #include "string.h" void printArray01(int array[], int len) { int i = 0; for(i=0; i {
2016-04-22 08:45:06
455
原创 数据结构与算法--查找与排序(一)
Top 线性查找二分查找冒泡排序插入排序选择排序快速排序归并排序 1 线性查找 1.1 问题 线性查找,又称为顺序查找,是指在所有给定的值中从一端开始逐个检查每个元素是否为要查找的对象,直到找到为止的过程。 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:逐个查找要查找的对象 代码如下: #include stdio.h>typ
2016-04-22 08:30:31
10864
原创 数据结构与算法--二叉树(二)
====================================================== 二叉链表.c #define _CRT_SECURE_NO_WARNINGS #include #include #include //1 typedef struct BiTNode { int data; struct BiTNode *lchild,
2016-04-22 08:24:20
502
原创 数据结构与算法--二叉树(一)
1 基于二叉链表的有序二叉树 1.1 问题 BST是Binary Search Tree的缩写,译为二叉搜索树,或有序二叉树,是二叉树的一种,它的定义如下: 1)或者是一棵空树; 2)或者是具有下列性质的二叉树: I) 若左子树不空,则左子树上所有结点的值均小于它的根结点的值; II) 若右子树不空,则右子树上所有结点的值均大于它的根结点的值; III)左、右
2016-04-22 08:16:42
1271
原创 数据结构与算法--链表C++实现
================================================================= linklist.h #include using namespace std; template struct Node { T t; // struct Node *next; }; template class LinkLis
2016-04-22 08:06:04
395
原创 数据结构与算法--线性表
=========================================================== linklist.h #ifndef _MYLINKLIST_H_ #define _MYLINKLIST_H_ typedef void LinkList; /* typedef struct _tag_LinkListNode LinkListNode; s
2016-04-22 08:01:21
301
原创 数据结构与算法--顺序表
====================================================================== seqlist.h #ifndef __MY_SEQLIST_H__ #define __MY_SEQLIST_H__ typedef void SeqList; typedef void SeqListNode; //链表 创建
2016-04-22 07:56:00
403
原创 数据结构与算法02--链表基础
1双向线性链表 1.1 问题 双向线性链表是采用链式存储的方式存储的线性表。链式存储结构是由一系列结点(链表中每一个元素称为结点)组成,每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储当前结点的前驱结点和后继结点地址的指针域,结点是在有数据时动态生成的,是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 1.2 方案
2016-04-21 09:40:29
1522
原创 数据结构与算法01--堆栈 & 队列
基于顺序表的堆栈 基于链式表的堆栈 1 基于顺序表的堆栈 栈是一种特殊的线性表,是限定在线性表表尾进行插入删除操作的线性表。由栈的概念衍生出几个子概念,它们是: 1)栈顶,即允许进行插入、删除操作的一端,又称为表尾,用栈顶指针(top)来指示栈顶元素。 2)栈底,即固定端,又称为表头 3)空栈,即栈当中没有数据元素。 顺序栈是采用顺序存储结构的栈,
2016-04-21 09:25:22
1699
原创 C语言08字符串 & 预处理 & 结构体
项目开发中字符串模型建立 strstr的while dowhile模型 //int cltClient_rev(void *handle, unsigned char *buf, int *buflen) //不要相信别人给你传送的内存地址是可用的 int getCout(char *str, char *substr, int *count) {
2016-04-20 16:48:19
1625
原创 C语言07指针高级
接口封装设计思想引导 Sckclient客户端api模型设计 第一套api函数 #ifndef _SCK_CLINT_H_ #define _SCK_CLINT_H_ //函数声明 // 1、客户端环境初始化 int sckClient_init(void **handle); //5 d
2016-04-20 15:50:08
1493
原创 C语言06指针进阶
1 指针的使用 1.1 问题 写一个程序,回顾指针的基本应用,然后测试空指针和野指针,再加上条件判断进行避免。 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:指针的使用 代码如下所示: #include stdio.h>void swap(int *a, int *b){ int tmp = *a; *a = *b; *
2016-04-20 15:42:37
1975
原创 C语言05指针基础
1 局部变量和全局变量 1.1 问题 分别定义一个局部变量和全局变量,测试生命期限和作用域。 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:局部变量和全局变量 代码如下所示: #include stdio.h>/*auto*/ int x = 1000; void f1(int a) { a = 10; auto int x
2016-04-20 15:31:28
1074
原创 C语言04函数与递归
1 函数的定义 1.1 问题 自定义两个简单的函数,使用return返回数据。 1.2 步骤 实现此案例需要按照如下步骤进行。 步骤一:函数的定义 代码如下所示: #include stdio.h>int getInt(){ return 10;}double getDouble(){ return 5.5;}int main(){
2016-04-20 15:24:36
1122
原创 C语言03数组
定义和初始化数组 问题 删除数组中的某个元素,并将后续元素顶上来。 步骤 实现此案例需要按照如下步骤进行。 步骤一:定义和初始化数组 代码如下所示: #include stdio.h>int main(){ int array[10]; for (int i = 0; i 10; i++) scanf("%d", &arr
2016-04-20 14:51:51
853
原创 C语言02基础深入理解(二)
指针基础 变量回顾 既然程序中的变量只是一段存储空间的别名 , 那么是不 是必须通过这个别名才能使用这段存储空间 ? 指针本质 ? 指针在本质上也是一个变量 ? 指针需要占用一定的内存空间 ? 指针用于保存内存地址的值 * 号的意义 ? 在指针声明时 ,* 号表示所声明的变量为指针 ? 在指针使用时 ,* 号表示取指针所指向的内存空间中的值 // 指针
2016-04-20 14:10:44
922
原创 C语言01深入理解基本概念(一)
基本数据类型分析 数据类型 什么是数据类型 ? ? 数据类型可以理解为固定内存大小的别名 ? 数据类型是创建变量的模子 类型的本质 char short int 1 byte 2 byte 4 byte 内存空间 char c short s int i 变量本质 ? 变量是一段实际连续存储空间的别名 ? 程序中通过变量来申请并命名存储空
2016-04-20 10:48:28
1669
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人