自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 map的代码实例

#include #include #include #include using namespace std;int main(){ mapint,string> t_map1; pairmapint,string>::iterator,bool> t_pairResult; //插入数据方式一 t_pairResu

2013-08-21 21:57:59 640

转载 函数模板与类模板

函数模板与类模板有什么区别?答:函数模板的实例化是由编译程序在处理函数调用时自动完成的,而类模板的实例化 必 须由程序员在程序中显式地指定。 即函数模板允许隐式调用和显式调用而类模板只能显示调用 这期间有涉及到函数模板与模板函数,类模板与模板类的概念 (类似于类与类对象的区 别)请看下面例子 注意:模板类的函数声明和实现必须都在头文件中完

2013-08-31 10:27:36 426

转载 QT 的信号与槽机制介绍

QT 是一个跨平台的 C++ GUI 应用构架,它提供了丰富的窗口部件集,具有面向对象、易于扩展、真正的组件编程等特点,更为引人注目的是目前 Linux 上最为流行的 KDE 桌面环境就是建立在 QT 库的基础之上。QT 支持下列平台:MS/WINDOWS-95、98、NT 和 2000;UNIX/X11-Linux、Sun Solaris、HP-UX、Digital Unix、IBM AIX、S

2013-08-30 16:40:01 405

转载 qt的APPLication Mainwindow layout 的基本知识

Qt中的每个类,都有一个对应的同名头文件,其中包含其类定义。例如要使用QApplication类,则需要在程序中添加" #include " QApplication类用于管理应用程序范围内的资源。其构造函数需要main函数的argc和argv作为参数。widget被创建时都是不可见的(always created hidden)。widget中可容纳其它widget。

2013-08-26 21:42:19 1767

转载 在C/C++中,指针和数组的区别

在C/C++中,指针和数组在很多地方可以互换使用,这使得我们产生一种错觉,感觉数组和指针两者是完全等价的,事实上数组和指针是有很大的区别的。 1.两者在含义上的区别。 数组对应着一块内存区域,而指针是指向一块内存区域。其地址和容量在生命期里不会改变,只有数组的内容可以改变;而指针却不同,它指向的内存区域的大小可以随时改变,而且当指针指向常量字符串时,它的内容是不可以被修改的,否则在运行时会

2013-08-23 21:06:06 552

转载 对C/C++中的static与extern关键字的使用

本篇文章是对C/C++中的static与extern关键字的使用进行了详细的分析介绍,需要的朋友参考下一.C语言中的static关键字在C语言中,static可以用来修饰局部变量,全局变量以及函数。在不同的情况下static的作用不尽相同。(1)修饰局部变量一般情况下,对于局部变量是存放在栈区的,并且局部变量的生命周期在该语句块执行结束时便结束了。但是如果用static进行修饰的话

2013-08-23 20:54:48 541

转载 malloc函数,realloc函数与calloc函数的区别

以下是对c语言中的malloc函数,realloc函数与calloc函数的区别以及它们之间的联系进行了介绍,需要的朋友可以过来参考下ANSI C说明了三个用于存储空间动态分配的函数(1) malloc分配指定字节数的存储区。此存储区中的初始值不确定(2) calloc为指定长度的对象,分配能容纳其指定个数的存储空间。该空间中的每一位(bit)都初始化为0(3) re

2013-08-23 20:41:34 908

转载 构造函数的深入理解

拷贝构造函数是C++最基础的概念之一,大家自认为对拷贝构造函数了解么?请大家先回答一下三个问题:1. 以下函数哪个是拷贝构造函数,为什么?X::X(const X&);   X::X(X);   X::X(X&, int a=1);   X::X(X&, int a=1, b=2);  2. 一个类中可以存在多于一个的拷贝构造函数吗?3. 写出以下程序段的输出结果, 并

2013-08-23 20:31:37 456

转载 约瑟夫环问题

约瑟夫环问题(Josephus)      用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。(约瑟夫环问题 Josephus)解法一(My Solution):      思想:建立一个有N个元素的循环链表,然后从链表头开始遍历并记数,如果计数i==m(i初始为1)踢出元素,继续循环,当当前元素与下一元素相同时退出循环。代码:

2013-08-23 17:49:13 453

转载 const 内存分配

常量有没有存储空间,或者只是编译时的符号而已?不一定。在C中,define常量是预处理阶段的工作,其不占据内存。但是const常量总是占据内存在C++中,const常量是否占据存储空间取决于是否有引用该常量地址的代码。C++对于const默认为内部链接,因此const常量定义通常都放在头文件中,即使分配内存也不会出现链接错误。若不引用常量对应的地址,则不会为其分配空

2013-08-22 22:00:09 650

原创 map的使用

Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,总结了一些map基本简单实用的操作!1. map最基本的构造函数;   mapmapstring;         mapmapint;   mapmapstring;         mapmapchar;   mapmapchar;            mapmapint

2013-08-21 21:38:05 459

转载 list 的 splice 函数

list::splice实现list拼接的功能。将源list的内容部分或全部元素删除,拼插入到目的list。函数有以下三种声明:void splice ( iterator position, list& x );  // void splice ( iterator position, list& x, iterator i );void splice ( ite

2013-08-21 17:50:28 787

转载 list 的 merge

STL list容器由于采用了双向迭代器,不支持随机访问,所以标准库的merge(), sort()等功能函数都不适用,list单独实现了merge(),sort()等函数。首先说一下merge() (以void merge(list& __x); 为例)按照函数声明的注释:/**       *  @brief  Merge sorted lists.       * 

2013-08-21 17:49:39 912

转载 [C++][STL]容器的capacity、max_size以及内存分配

capacity - 容器的成员函数capacity()取得max_size - 容器的成员函数max_size()取得STL容器的capacity属性,表示STL在发生realloc前能允许的最大元素数,也可以理解为预分配的内存空间。例如一个vector v的capacity为5,当插入第6个元素时,vector会realloc,vector内部数据会复制到另外一个内存区域。这样

2013-08-20 21:19:53 746

转载 vector的reserve和resize的区别

vector 的reserve增加了vector的capacity,但是它的size没有改变!而resize改变了vector的capacity同时也增加了它的size!原因如下:      reserve是容器预留空间,但在空间内不真正创建元素对象,所以在没有添加新的对象之前,不能引用容器内的元素。加入新的元素时,要调用push_back()/insert()函数。      r

2013-08-20 21:11:52 471

原创 派生类、基类和继承

1、在私有继承方式下,基类的public成员在派生类中都变成私有的,特别是成员函数变为私有后,切断了派生类对象访问基类的私有成员、特别是私有数据成员的消息通路。为此,C++提供了一种“访问声明”的调整机制,其作用是在派生类作用域内回复它们原来在基类中的访问权限,其格式为:       class derivedclass : private baseclass      {

2013-08-19 17:52:13 1368 1

转载 虚析构函数的重要性

C++多态性表现在它为编程者提供了运算符重载,函数名重载和虚函数等运行机制。运算符重载和函数名重载采用静态联编机制,而虚函数采用动态联编机制。 在一个类层次结构中,基类说明有虚函数,而在派生类作用域内将基类的虚函数重新编写一个新的函数体,那么 基类的析构函数就必须指定为虚析构函数,否则很可能产生程序隐患。特别在含有动态变量和动态对象的程序中,因使用delete运算符删除一个对象时不

2013-08-19 17:26:57 454

转载 基类和派生类的赋值规则

在公有继承方式下:派生类的对象/对象指针/对象引用可以赋值给基类的对象/对象指针/对象引用,基类的对象/对象指针/对象引用不能赋值给派生类的对象/对象指针/对象引用。因为派生类包含了基类的所有信息,而基类缺乏派生类中的信息。        True      基类对象/对象指针/对象引用 = 派生类对象/对象指针/对象引用        False     派生类对象/对象

2013-08-19 17:22:57 2883

转载 静态联编和动态联编

联编是指一个计算机程序自身彼此关联的过程,在这个联编过程中,需要确定程序中的操作调用(函数调用)与执行该操作(函数)的代码段之间的映射关系;按照联编所进行的阶段不同,可分为静态联编和动态联编;静态联编:是指联编工作是在程序编译连接阶段进行的,这种联编又称为早期联编;因为这种联编是在程序开始运行之前完成的;在程序编译阶段进行的这种联编又称静态束定;在编译时就解决了程序中的

2013-08-19 16:44:08 702

转载 C++中静态成员函数访问成员变量问题

C++会区分两种类型的成员函数:静态成员函数和非静态成员函数。这两者之间的一个重大区别是,静态成员函数不接受隐含的this自变量。所以,它就无法访问自己类的非静态成员。左例中分别声明了成员函数void add(),成员变量int a,和静态成员函数 static void staticfunc(),静态成员变量 static int sa.在staticfunc()的定义中

2013-08-16 20:55:19 2392

转载 shmdt与shmctl的区别

先看看 shmctl()   原型: int shmctl ( int shmqid, int cmd, struct shmid_ds *buf );  返回:成功为 0 ,   失败 为-1 这个特殊的调用和semctl()调用几乎相同,因此,这里不进行详细的讨论。有效命令的值是: IPC_STAT :检索一个共享段的shmid_ds结构,把它存到buf参数的地址中。 

2013-08-10 22:37:14 1016

转载 文件权限数字所代表的信息

chmod ABC file其中A、B、C各为一个数字,分别表示User、Group、及Other的权限。A、B、C这三个数字如果各自转换成由“0”、“1”组成的二进制数,则二进制数的每一位分别代表一个角色的读、写、运行的权限。比如User组的权限A:如果可读、可写、可运行,就表示为二进制的111,转换成十进制就是7。如果可读、可写、不可运行,就表示为二进制的110,转换成十进制就是

2013-08-10 16:43:11 1194

转载 IO模式设置,阻塞与非阻塞的比较,recv参数对性能的影响

第一部分在网络程序中遇到的一些问题进行了总结, 这里主要针对的是我们常用的TCP socket相关的总结, 可能会存在错误, 有任何问题欢迎大家提出.对于网络编程的更多详细说明建议参考下面的书籍《UNIX网络编程》 《TCP/IP 详解》 《Unix环境高级编程》非阻塞IO和阻塞IO:在网络编程中对于一个网络句柄会遇到阻塞IO和非阻塞IO的概念, 这里对于这两种socket先做

2013-08-10 14:40:26 1142

原创 网络面试题

简单解释下TRUNK?答:交换环境中有两种链路,一种是接入链路另一种就是TRUNK(中继)链路,接入链路只属于一个VLAN,而TRUNK可以承载多个VLAN,TRUNK工作时进行VLAN标识,主要有两种封装模式:IEEE802.1Q和ISL。2,请描述一下PPP协议的应用?  PPP协议是目前广域网上应用最广泛的协议之一,它的优点在于简单、具备用户验证能力、可以解决IP分配等。 

2013-08-02 17:42:21 718

原创 1、connect方法会阻塞,请问有什么方法可以避免其长时间阻塞? 答:最通常的方法最有效的是加定时器;也可以采用非阻塞模式。 2、网络中,如果客户端突然掉线或者重启,服务器端怎么样才能立刻知道? 答

1、connect方法会阻塞,请问有什么方法可以避免其长时间阻塞?答:最通常的方法最有效的是加定时器;也可以采用非阻塞模式。2、网络中,如果客户端突然掉线或者重启,服务器端怎么样才能立刻知道?答:若客户端掉线或者重新启动,服务器端会收到复位信号,每一种tcp/ip得实现不一样,控制机制也不一样。3.在子网 />答:简:30表示的是网络号(network number)是30

2013-08-02 17:10:17 3173

空空如也

空空如也

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

TA关注的人

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