C++
文章平均质量分 82
evil_1_live
学生一名,上下求索中!
展开
-
VS2010代码提示功能配置:Visual Assist X 10.7.1912.0
在Windows下进行C++程序设计,VS2010是原创 2014-05-06 11:11:34 · 7499 阅读 · 4 评论 -
链表排序实现
//Filename: List.h#ifndef LIST_H_INCLUDED#define LIST_H_INCLUDEDtemplatestruct Node{ T value; Node *link; Node(Node *l =NULL){ link = l; } Node(const T &x, Node *l=NULL){ value = x; li原创 2014-09-27 16:06:23 · 894 阅读 · 0 评论 -
C/C++笔试题-主要考察C/C++语言基础概念、算法及编程
1.编写my_strcpy函数,实现与库函数strcpy类似的功能,不能使用任何库函数;答:char *strcpy(char *strDest, const char *strSrc){if ( strDest == NULL || strSrc == NULL)return NULL ;if ( strDest == strSrc)returnstrDest ;ch转载 2014-08-26 13:46:57 · 1149 阅读 · 0 评论 -
单链表(List)的模板实现
//Filename :List.h#ifndef LIST_H#define LIST_Htemplate struct LinkNode{ //节点结构体定义 T data; LinkNode *link; LinkNode(LinkNode * ptr= NULL) { link = ptr; } LinkNode(c原创 2014-09-21 19:39:20 · 931 阅读 · 0 评论 -
栈(Stack)的实现
抽空实现下zhan原创 2014-09-20 15:07:57 · 865 阅读 · 0 评论 -
C++基础:C++标准库之map简介
1、综述 Map是C++STL中众多的Container(容器)之一,与python的字典略类似,Map作为一个关联容器,将key与value相互关联,其中key为关键字,是不可更改的,而value是key值的相对应值。Map所提供的一对一的数据映射关系,在很多时候可以提供编程的极大便利。 Map内部通过自建红黑树(一种非严格意义上的平衡二叉树)实现,可以对数据原创 2014-05-19 22:35:32 · 5515 阅读 · 0 评论 -
C++基础:C++标准库之set简介
1、综述 Set是C++STL中众多的Container(容器)之一,与python的字典略类似,Map作为一个关联容器,将key与value相互关联,其中key为关键字,是不可更改的,而value是key值的相对应值。Map所提供的一对一的数据映射关系,在很多时候可以提供编程的极大便利。原创 2014-05-20 00:16:21 · 3185 阅读 · 0 评论 -
C++基础:C++中vector使用简介
vector是C++标准库中的一个类,与数组颇为相似,不同之处在于,vector可以自动扩展容量,故可以将其视为会自动扩展容量的数组。vector是C++标准程序库中的众多容器(container)之一,能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型数据的动态数组。为了可以使用vector,需要在你的头文件中包含下面的代码:#include using原创 2014-03-19 19:02:25 · 3521 阅读 · 0 评论 -
C++基础:C++模板(Template)简介
1、概述:模板(Template)是一种强大的C++软件复用特性,通常有两种形式:函数模板和类模板。函数模板针对仅参数类型不同的函数;类模板针对仅数据成员和成员函数类型不同的类。函数模板和类模板可以是程序员只需制定一个单独的代码段,就可表示一整套称为函数模板特化的相关(重载)函数或是表示一整套称为类模板特化的相关的类。这种技术称为泛型程序设计(generic programming)。使用原创 2014-05-05 20:39:45 · 1232 阅读 · 0 评论 -
C++基础:C++标准库之栈(stack)和队列(queue)
在C++标准库(STL)中,实现了zhan原创 2014-05-05 01:11:53 · 29345 阅读 · 6 评论 -
C++基础:C++函数名字的隐藏:重写、重载、重定义
概要: C++中经常出现函数名字一样,但参数列表或返回值不同的函数,要搞清楚函数的正确调用关系,需理清三个概念:重写(override)、重载(overload)、重定义(redefine)。一、三个基本概念 1、重定义(redefine):派生类对基类的成员函数重新定义,即派生类定义了某个函数,该函数的名字与基类中的函数名字一样。转载 2014-05-05 21:28:00 · 1036 阅读 · 0 评论 -
C++基础:C++中的explicit关键字
C++中,explicit用来修饰类的构造函数,表明该构造函数是显式的,不能发生隐式类型转换(implicit type conversion)。所有的单参数的构造函数都应该是explicit ,从而避免后台发生的隐式的类型转换。否则,在某些宽松的规则下,会发生没有进行显示类型转换操作而产生类型转换的情况。通常,这种情况会破坏代码的可读性,并导致难以发现的错误。 那么何为隐式类型转换(i原创 2014-03-16 21:19:21 · 823 阅读 · 0 评论 -
C++基础:各种输入方法总结,cin、cin.get()、cin.getline()、getline()、gets()、getchar()
在C++中,各种输入方法还是不少的,而且各有所异,本文做一点简要。原创 2014-05-11 00:20:54 · 18756 阅读 · 9 评论 -
C++基础:堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两转载 2014-05-10 13:56:15 · 709 阅读 · 0 评论 -
C++基础:缺省构造函数
缺省构造函数是C++以及其他的一些面向对象的程序设计语言中,原创 2014-05-10 16:01:50 · 31691 阅读 · 1 评论 -
C++ 图的实现
图可以说是算法与数据结构中十分重要的一个部分,然而对于图的实现,还是有一点点繁琐,今天参考清华大学出版社《数据结构》一书进行了一些回顾,记录于此。本文并不对基本概念进行过多探讨,而着眼于实现。基于对途中边集的存储有邻接矩阵以及邻接表两种主要形式。本文将着重实现三个类:Graph基类,包含大量的virtual函数以待在派生类中实现;Graph的派生类Graphmtx(邻接矩阵实现图的存储)、Gr原创 2014-05-06 20:26:51 · 18248 阅读 · 7 评论 -
各种排序算法探讨与实现
今天对各个排序算法进行了一点复习,并通过一段代码对几种排序算法进行了实现。这包括:冒泡排序,插入排序,选择排序,希尔排序,堆排序,归并排序,快速排序等,其他还有如桶排序,基数排序,计数排序等待有空时在进一步讨论。各种算法实现见以下示例代码:#include#include#include#includeusing namespace std;template void bub原创 2014-03-24 23:50:16 · 892 阅读 · 0 评论 -
单链表若干操作实现
//单链表若干操作实现代码//0.0 单链表求和.递归与非递归算法int GetSum(ListNode *pHead){ if(pHead==NULL) return 0; else return pHead->value + GetSum(pHead->next);}int GetSum2(ListNode *pHead){ int sum = 0; List原创 2014-10-12 21:34:48 · 947 阅读 · 0 评论