![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C&&C++
文章平均质量分 92
慢慢来比较快
不拼搏,枉少年。
展开
-
u盘安装最新的OS X Mavericks
OS X Mavericks[1](10.9版本)是蘋果公司开发的個人電腦和服务器操作系統OS X的第十个版本,供麥金塔電腦使用。苹果于2013年6月10日公布了OS X Mavericks,[1]并在2013年10月22日起免费下载。[2]從這個版本起,蘋果公司不再以大型貓科動物來為其操作系統命名,改為採用美國加州的地名。“Mavericks”一名來自加州一個同名的衝浪地點。原创 2014-01-10 15:10:46 · 1542 阅读 · 0 评论 -
C语言中字符串处理函数
1.strchr函数原型:extern char *strchr(const char *s,char c)头文件:#include 功能:查找字符串s中首次出现字符c的位置说明:返回首次出现c的位置的指针,如果s中不存在c则返回NULL。上篇文章我们需要处理分隔一些命令来传递给一个指针数组,正好用到这个函数,so记录下来。看代码:原创 2013-06-04 00:53:14 · 703 阅读 · 0 评论 -
STL容器学习第二篇(记录)
容器适配器 :三种顺序 容器适配器:queue, priority_queue 和 stack 适配器 是 使某一个事物的行为类似 于另外一个事物的行为的一种机制。 STL 适配器分为 函数对象适配器、迭代器适配器 和 容器适配器 3种,分别完成对应的类型转换。这个概念太抽象了,那么 具体到生活中的实例 如何理解呢,查看一下网上的资料得出:容器适配器就是封原创 2013-06-01 10:58:26 · 560 阅读 · 0 评论 -
STL容器学习第三篇(记录)关联容器
关联容器:关联容器与顺序容器的区别 在于 关联容器 是通过key 来存取 和读取 元素,顺序容器通过 容器中的位置 顺序存储和访问元素。 关联容器 是通过key -value方式工作的 。关联容器类型:map 和set multimap 和 multiset map是 key-value set 是 只存放一个key。。 如字意表示:multimap 和原创 2013-06-01 15:27:57 · 592 阅读 · 0 评论 -
理解虚基类、虚函数与纯虚函数的概念
1.虚基类当在多条继承路径上有一个公共的基类,在这些路径中的某几条汇合处,这个公共的基类就会产生多个实例(或多个副本),若只想保存这个基类的一个实例,可以将这个公共基类说明为虚基类在继承中产生歧义的原因有可能是继承类继承了基类多次,从而产生了多个拷贝,即不止一次的通过多个路径继承类在内存中创建了基类成员的多份拷贝。虚基类的基本原则是在内存中只有基类成员的一份拷贝。这样,通过把基原创 2013-05-14 20:14:43 · 655 阅读 · 0 评论 -
位操作基础篇之位操作全面总结
原文地址:http://blog.csdn.net/morewindows/article/details/7354571#comments 推荐这个博主的文章,尤其是算法那个专栏,简单易懂。。同样都是研究生,差距咋就这么大捏。。。来进入正文:Title: 位操作基础篇之位操作全面总结Author: MoreWindowsE-mail: more转载 2013-05-03 20:36:51 · 559 阅读 · 0 评论 -
常见排序算法的实现与性能比较
原文地址在这里,这里是多个排序算法全部整理过来的。整理转载过来只是为了自己阅读方便。http://blog.csdn.net/morewindows/article/details/7961256首先回顾下各种排序的主要思路:一. 冒泡排序冒泡排序主要思路是:通过交换使相邻的两个数变成小数在前大数在后,这样每次遍历后,最大的数就“沉”到最后面了。重复转载 2013-04-14 20:32:08 · 953 阅读 · 0 评论 -
C++ 虚函数表解析
转载自:http://blog.csdn.net/haoel/article/details/1948051 作者:陈皓前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码转载 2013-05-11 21:01:51 · 512 阅读 · 0 评论 -
缓冲区溢出深入理解
本文首先向读者讲解了Linux下进程地址空间的布局以及进程堆栈帧的结构,然后在此基础上介绍了Linux下缓冲区溢出攻击的原理及对策。前言从逻辑上讲进程的堆栈是由多个堆栈帧构成的,其中每个堆栈帧都对应一个函数调用。当函数调用发生时,新的堆栈帧被压入堆栈;当函数返回时,相应的堆栈帧从堆栈中弹出。尽管堆栈帧结构的引入为在高级语言中实现函数或过程这样的概念提供了直接的硬件支持,但是由于将函数返回地转载 2013-05-09 17:00:35 · 516 阅读 · 0 评论 -
C++中重载操作符
1.C++中重载操作符时什么时候定义成友元,什么时候定义为成员方法 在多数情况下,将运算符重载为类的成员函数和类的友元函数都是可以的。而在某种情况下,程序员没得选择,只能重载为类成员。但成员函数运算符与友元函数运算符也具有各自的一些特点: (1) 一般情况下,单目运算符最好重载为类的成员函数;双目运算符则最好重载为类的友元函数。(2) 以下一原创 2013-05-22 09:13:40 · 1014 阅读 · 0 评论 -
进程与线程的一个简单解释
看到一篇关于线程和进程很有意思的文章,so转载过来~~! 原文地址:http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。1.转载 2013-06-07 22:03:11 · 752 阅读 · 0 评论 -
STL容器学习第一篇(记录
1。顺序容器顺序容器有3种 : Vector list 和 deque容器元素的初始化:方式有5种。来验证一下:#include #include #include #include #include #include #include #include using namespace std;void print(vector & s){vector::原创 2013-05-25 20:39:52 · 1089 阅读 · 0 评论 -
C语言中strcpy、strncpy、memset函数的使用
在C语言中会经常用到拷贝函数,本文记录下strcpy、strncpy、memset函数的使用。原创 2013-12-24 21:35:04 · 1785 阅读 · 0 评论 -
排序函数:sort与qsort
前言:qsort和sort都是系统提供给我们的可以直接排序的两个函数。在面试的时候手写代码需要排序的时候可以直接去调用这两个函数 。我自己在A题目的时候遇到了排序函数的问题,用了sort , AC不过,用了qsort竟然过了。。搞不懂。来看一下两者的区别,并分析下当时出现的错误原因。 qsort: 函数原型:void qsort (vo原创 2013-12-20 23:39:13 · 1319 阅读 · 0 评论 -
细说C/C++关键字sizeof
sizeof是C/C++中的一个操作符(operator),其作用是返回一个对象或者类型所占的内存字节数。其返回值类型为size_t,在头文件stddef.h中定义。这是一个依赖于编译系统的值,一般定义为typedef unsigned int size_t;三种使用形式:1) sizeof( 对象/变量 ); 2) sizeof( 类型名字 ); 3) sizeof原创 2013-11-23 17:49:59 · 911 阅读 · 0 评论 -
LeetCode(Longest Consecutive Sequence)
1.Longest Consecutive Sequence 原文链接:点击这里进入 基本内容: Given an unsorted array of integers, find the length of the longest consecutive elements sequence. For example, Giv原创 2013-12-10 23:11:40 · 780 阅读 · 0 评论 -
C++开发者都应该使用的10个C++11特性
原文转载于:Here原文链接:HereThis article discusses a series of features new to C++11 that all developers should learn and use. There are lots of new additions to the language and the standard library原创 2013-12-10 23:19:11 · 1210 阅读 · 1 评论 -
C++ map & hash_map
1.Map的使用 map简介: map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字key,每个关键字只能在map中出现一次(multimap是可以出现多个关键字的),第二个可能称为该关键字的值alue)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建原创 2013-12-10 10:58:30 · 4289 阅读 · 0 评论 -
QT新手入门程序(计算器程序
QT入门小程序(简单计算器):1.先来看下界面好了:界面布局参考这个:点击这里由于某些键不知道具体的作用是什么,所以就没有实习点击对应的槽函数,(这些键包括GT 单位 MC MR M-/下调 M+/上调 CE 和AC ) -->键 和 % 号键都实现的删除功能(win7 自带计算器 %是删除.模仿 )其余的键 是可以正常使用的。2.先原创 2013-11-06 22:23:03 · 1141 阅读 · 1 评论 -
QT信号和槽机制
1.QT介绍和安装使用 QT 是一个跨平台的 C++ GUI 应用构架,它提供了丰富的窗口部件集,具有面向对象、易于扩展、真正的组件编程等特点。目前Linux上最为流行的KDE桌面环境就是建立在QT库的基础上。 如何安装使用QT:(ubuntu12.04 ) 1.首先打开终端,输入下面命令:sudo apt-get insta原创 2013-10-25 22:51:32 · 4122 阅读 · 1 评论 -
C++异常处理
引言:异常处理(exception handling)是C++的一项语言机制,用于在程序能处理异常事件。异常事件在C++中表示为异常对象(exception obje)。异常事件发生时,由操作系统为程序设置当前异常对象,然后执行程序的当前异常处理代码块,在包含了异常出现点的最内层的try块,依次匹配同级的catch语句。如果匹配catch语句成功,则在该catch块内处理异常;然后执行原创 2013-09-22 17:24:09 · 1075 阅读 · 0 评论 -
基类中的protected成员到底如何访问?
在读C++primer的时候遇到了一句话让我很是费解:派生类只能通过派生类对象访问其基类的protected成员,派生类对其基类类型对象的protected成员没有特殊的访问权限。经查阅资料 个人理解是这样的:只有在派生类中的作用域中(譬如派生类中的函数)才可以通过派生类对象访问基类的protected成员,在派生类中也不可以直接访问基类对象的protected成员。下面给出一个例子:原创 2013-05-22 17:47:05 · 2226 阅读 · 0 评论 -
C++中构造函数,拷贝构造函数和赋值操作符的使用
1.我们知道在创建一个对象的时候 ,这3个函数都可以用来对一个对象进行初始化,那么这3个函数调用的时间分别是在什么时候呢。写一个函数验证一下:#include #include #include using namespace std;class MyString{private: char *m_data; int data;public: //原创 2013-05-20 09:30:39 · 590 阅读 · 0 评论 -
C语言字符串问题
1.首先看一下 字符串 和字符数组中的细微区别: 1 。定义字符串是最后一个字符为NULL字符的字符数组。字符串一定是字符数组。字符数组,完整地说叫字符类型的数组。字符数组不一定是字符串。(字符串最后一个元素必须为NULL)字符数组的长度是固定的,其中的任何一个字符都可以为NULL字符。字符串只能以NULL结尾,其后的字符便不属于该字符串。strlen()等字符串函数对原创 2013-04-28 09:29:18 · 738 阅读 · 0 评论 -
深入解析 strcpy() 笔试面试高频题
一,strcpy用法及注意事项 1)strcpy( )概述 原型: extern char *strcpy(char *dest,char *src); //注意把谁复制给谁 用法: #include 功能:把src所指以N转载 2013-04-27 16:05:07 · 652 阅读 · 0 评论 -
C 语言 给字符数组 赋值的两种不同方式的区别
今天遇到了一个奇怪的问题,暂时没有解决掉,先记录下来。如果有高手看到,可否告知,感谢~首先看代码:[html] view plaincopy#include iostream> #include stdio.h> #include string.h> int main(void) {原创 2013-04-28 12:21:40 · 691 阅读 · 0 评论 -
assert的使用方法
assert.hassert.h是C標準函数庫中的头文件。其中定义了assert()宏用于程序调试。在C標準函数庫中,它是個非常特別的头文件,你可以將它引入數次以獲得不同的效果,此效果依引入時是否以定義NDEBUG而定。宏assert()是一个诊断宏,用于动态辨识程序的逻辑错误条件。其原型是: void assert( int expre原创 2013-04-28 08:50:57 · 741 阅读 · 0 评论 -
C++ 中delete p 和delete [] p的区别
在看面试宝典的时候 ,书上有一段程序写下来一堆错误,google下 是delete 和delete []的区别首先看一下错误代码和错误结果:#include class CTest{public: ~CTest() { printf("~CTest dtor\n"); }};int main(){ CTest *p = n原创 2013-04-26 11:06:29 · 1024 阅读 · 0 评论 -
函数调用过程的参数传递和栈帧结构
原文地址:http://blog.csdn.net/lewsn2008/article/details/6680050C++函数调用过程深入分析0. 引言 函数调用的过程实际上也就是一个中断的过程,那么C++中到底是怎样实现一个函数的调用的呢?参数入栈、函数跳转、保护现场、回复现场等又是怎样实现的呢?本文将对函数调用的过程进行深入的分析和详细解释,并在VC 6.0环境下进行演转载 2013-04-25 10:17:28 · 913 阅读 · 0 评论 -
多线程的使用
线程定义英文:Thread每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。进程也可能是整个程序或者是部分程序的动态执行。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任务。通常由操作系统负责多个线程的调度和执行。线程是程序中一个单一的顺序控制流原创 2013-04-23 22:00:01 · 475 阅读 · 0 评论 -
C++ 类的默认构造函数
1.类的默认构造函数合成的默认构造函数:一个类哪怕只定义了一个构造函数,则编译器不会自动在生成默认构造函数。只有一个类 没有定义构造函数时,编译器才会自动生成一个合成的默认构造函数。(即是系统提供的默认构造函数,而不是用户所自定义的默认构造函数)编译器合成的默认构造函数,不是将每个数据成员初始化为相关类型的默认值,而是使用与变量初始化相同的规则初始化成员:具有类类型的成员运行各自的默认原创 2013-04-14 15:08:06 · 707 阅读 · 0 评论 -
C++泛型函数
1.accumulate#include #include #include #include using namespace std;int main(){ vector v; v.push_back("abc6"); v.push_back("abc5"); v.push_back("abc4"); v.push_back("abc3原创 2013-04-12 10:12:24 · 500 阅读 · 0 评论 -
C语言对文件的操作
函数简介:函数功能:打开一个文件函数原型:FILE * fopen(const char * path,const char * mode);相关函数:open,fclose,fopen_s[1],_wfopen所需库:stdio.h>返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno原创 2013-03-28 16:13:58 · 617 阅读 · 0 评论 -
C++ 从零单排(1)
最近发现一个挺有意思的东西,一问一答-http://wenda60.com/。我这水平也就敢冲一下C++了,下面是一些记录。默认this指针this指针是一个特殊的指针,当类的某个非静态的成员函数在执行时,就会存在this指针。它指向类的一个对象,且这个对象的某个成员函数正在被调用。this指针的名字始终是this,而且总是作为隐含参数传递给每一个被声明的成转载 2013-04-30 15:52:02 · 561 阅读 · 0 评论 -
临界区(Critical section)与互斥体(Mutex)的区别
1、临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。2、临界区是非内核对象,只在用户态进行锁操作,速度快;互斥体是内核对象,在核心态进行锁操作,速度慢。3、临界区和互斥体在Windows平台都下可用;Linux下只有互斥体可用。转载 2013-04-29 10:40:44 · 600 阅读 · 0 评论 -
关于C++ const 的全面总结
C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 一、Const作用 如下表所示:No.作用说明参考代码转载 2013-05-08 10:48:31 · 411 阅读 · 0 评论 -
浅拷贝与深拷贝
1拷贝构造函数 拷贝构造函数是一种特殊的构造函数,它由编译器调用来完成一些基于同一类的其他对象的构建及初始化。其唯一的参数(对象的引用)是不可变的(const类型)。此函数经常用在函数调用时用户定义类型的值传递及返回。拷贝构造函数要调用基类的拷贝构造函数和成员函数。一般来说只包含类类型和内置类型(不是指针类型)成员的类,无需自定义复制构造函数。合成复制构造函数相当于一个每个数原创 2013-05-16 22:07:08 · 556 阅读 · 0 评论 -
类中static数据成员和static成员函数
类中的数据成员:static 数据成员和static成员函数1.static数据成员 在类中用static 声明的数据成员,成员可以是常量,引用,数组,或者类类型等。 static 数据成员必须在类定义体的外部定义和初始化,在类中,普通数据成员的初始化是通过类构造函数进行初始化的,而static数据成员是在定义的时候进行初始化。 静态成员:静态类中的成员加入stat原创 2013-05-16 15:23:32 · 987 阅读 · 0 评论 -
类中隐式类型转换
1.隐式类型转换C++中定义了内置类型的几个自动转换,为了定义到类类型的隐式转换,必须定义合适的构造函数。 可以用单个实参来调用的构造函数定义了从形参类型到该类类型的隐式转换。来看一下例子:#include #include using namespace std;#include using namespace std;class Base原创 2013-05-16 16:29:02 · 562 阅读 · 0 评论 -
C++中const成员函数和构造函数
Const 成员函数1.在类中在函数声明的后面添加const 表示函数操作不会改变对象的内容, 在非const成员函数中, this指针的类型是一个指向类类型的const 指针,(可以改变指向this指针 所指向的内容的值,不可以改变this所保存的值。而在const 成员函数中,this的类型是指向一个const 类类型对象的const 指针,即不能改变this所指向的对象,也不能改原创 2013-05-19 14:56:35 · 1522 阅读 · 0 评论