
编程综合
文章平均质量分 58
wind19
相互学习,共同进步
展开
-
iterator, const_iterator 与 const iterator
<br />vector只是容器中的一种。所有的标准库容器都定义了相应的迭代器类型。迭代器对所有的容器都适用,现代 C++ 程序更倾向于使用迭代器而不是下标操作访问容器元素。<br />1.iterator,const_iterator作用:遍历容器内的元素,并访问这些元素的值。iterator可以改元素值,但const_iterator不可改。跟C的指针有点像。<br /> (容器均可以++iter,而vector还可以iter-n, iter+n,n为一整型,iter1-iter2转载 2010-08-20 14:06:00 · 786 阅读 · 0 评论 -
CUDA笔记
一个gpu只能被一个cpu线程来处理,不能冲突,不然异常如果你有2快卡,可以一个线程控制一块卡原创 2014-05-22 15:43:42 · 752 阅读 · 0 评论 -
svn 中如何checkout出单个文件
前言在Subversion1.5.0版本以前,想要checkout出单个文件是不可能的事情。 而在Subversion1.5.0中,引入了稀疏检出(Sparse checkouts)的特性,这使得检出单个文件成为可能。假设我们有一个版本库,访问地址为http://www.iusesvn.com/project1project1里面有一个目录images,目录里有很多图片文件转载 2012-12-07 14:02:51 · 44882 阅读 · 2 评论 -
DevC++调试功能(转)
DevC++4.9.9.2中,按 F8 开始调试。提示信息为:工程没有调试信息,您想打开工程的调试选项并重新生成吗?选择是后,再按F8,仍旧是这个信息。什么原因呢?按照帮助,Frequently Asked Questions (FAQ)中提示How do i enable Debugging mode ?Go to Compiler Options and click on转载 2012-12-26 13:56:09 · 6952 阅读 · 1 评论 -
svn迁移,备份,重装系统后恢复数据
svn服务要迁移到其它linux主机上 原服务器svn配置 仓库路径:/home/svn/repos 权限文件:/home/svn/svn-access-file 用户认证文件:/home/svn/passwordfile apache 配置文件:/etc/httpd/conf.d/subversion.conf 做法如下转载 2012-03-14 14:59:53 · 4936 阅读 · 0 评论 -
svn常用指令
1、将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下转载 2012-07-16 18:43:33 · 626 阅读 · 0 评论 -
VMtools安装以及设置
一、安装VMtools点击VMware菜单的——虚拟机——安装VMwareTools,在弹出的对话框中选择“安装”。这时,在Ubuntu下会自动加载Linux版的VMwareTools的安装光盘镜像。你会看到虚拟机的桌面上出现了一个名为VMwareTools的光盘图标,并且被自动打开。其中包括VMwareTools-5.3.3-34685-i386.rpm和VMwareTool原创 2009-10-29 14:48:00 · 53002 阅读 · 3 评论 -
我对VMware Workstation虚拟网络VMnet0、VMnet1、VMnet8的理解和图解
1. 文中符号的说明:: 可以理解成A,也可以理解成B。2. 术语调制解调器(Modem): 实现模拟信号与数字信号间的相互转换,可以忽略成一条网线。路由器: 提供路由、DHCP、NAT等的专门设备,连接不同的网络(包括局域网与WAN之间的连接,提供互联网连接)。:交换机和网桥的功能类似,基本上可以认为是一样的。如果真要说差异在哪里:两点,一是接口数量不同,交换机比网桥的接转载 2010-06-06 12:34:00 · 1461 阅读 · 1 评论 -
5分钟弄懂Docker
摘要:7月3日“Docker之道”培训中,笔者发现大家对Docker的理解还比较初级,刚好看到了一篇通俗易懂的文章,看完后对Docker有了一个清楚的认识,在这里分享给读者。编者按:7月3日的“优快云在线培训:Docker之道”,同时在线人数达到了历史新高,但是最后的QA环节,笔者发现大家的问题还是很初级的,Docker技术还处在Gartner技术曲线的萌芽期。刚好前几天看到了一篇非转载 2014-07-14 09:47:21 · 1061 阅读 · 0 评论 -
同步通信与异步通信区别
同步通信原理 同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。 采用同步通信时,将许多字符组成一个信息组,这样,字符可以一个接一个地传输,但是,在每组信息(通常称为帧)的开始要加上同步字符,在没有信息要传输时,要填上空字符,因为同步传输不允许有间隙。在同步传输过程中,一个字符可以对应5~8位转载 2012-04-06 17:41:12 · 104118 阅读 · 9 评论 -
SDU 和 PDU
SDU(service Data Unit):服务数据单元,又叫业务数据单元,是指定层的用户服务的数据集,传送到接收方的时候同一协议层时数据没有发生变化,即业务部分,然后发给下层之后,下层将其封装在PDU中发送出去。服务数据单元是从高层协议来的信息单元传送到低层协议。第N层服务数据单元SDU,和上一层的协议数据单元(PDU)是一一对应的。根据协议数据单元的数据的不同,送到接收端的指定层。PDU原创 2009-10-14 15:19:00 · 11078 阅读 · 2 评论 -
GPU的存储系统
GPU的存储系统包括 register,shared memory,texture memory, local memory, global memory registershared memorytexture memorylocal memoryglobal memory 主机访问权限否原创 2014-01-22 18:55:46 · 3063 阅读 · 0 评论 -
windows下通过map,cod分析堆栈
一般程序崩溃可以通过debug,找到程序在那一行代码崩溃了,最近编一个多线程的程序,都不知道在那发生错误,多线程并发,又不好单行调试,终于找到一个比较好的方法来找原因,通过生成map文件,由于2005取消map文件生成行号信息(vc6.0下是可以生成行号信息的,不知道microsoft怎么想的,在2005上取消了),只能定位在那个函数发生崩溃。这里可以通过生成cod文件,即机器码这一文件,具体定位转载 2014-10-30 09:43:23 · 2578 阅读 · 0 评论 -
GCC中使用hash_map
GCC中使用hash_map2009-04-01 21:34最近学习STL,hash_map就是利用hash表实现的一个map,在查找是具有更快的效率,前提是你使用了适当的hash函数。hash_map不是STL中的一部分,但大多数C/c++的编译器都提供了这个容器。GCC也不例外,我在winds下使用的IDE是code blocks,它使用的编译器就是GCC。因为hash_map不是STL中的一部分,所以使用起来也不是很异样。下面的是我搜索到的一些资料:【1】http://zitronensa转载 2010-09-07 17:44:00 · 6892 阅读 · 0 评论 -
STL——书籍
C++标准程序库STL源码剖析Efficient STL原创 2012-04-23 17:05:05 · 992 阅读 · 0 评论 -
STL——container
1 STL的container分为两种类型sequence :元素存储的位置只和插入的顺序有关,和本身的值无关associative:元素存储的位置只和本身的值有关,和插入顺序无关(对于这样的容器是不能作为Manipulation algorithm(修改值或位置)的destination,因为如果我们修改了其中的值或位置,那么容器就不是排序的了,这样对于查找而言将是很费时的。)如原创 2012-04-24 15:04:36 · 1905 阅读 · 0 评论 -
STL——Algorithm
尽量调用容器自带的函数,然后才是算法,因为内部函数的性能要高很多remove: 并不删除空间大小,删掉给定的值后,后面的值往前移,例如coll里面的数据为 1 3 5 6 3 7 8pos = remove(coll.begin(), coll.end(), 3)之后为 1 5 6 7 8 7 8,但这时remove返回的pos是在第一个8之后,也就是有效数据之后;所以最好记下原创 2012-04-28 10:43:40 · 677 阅读 · 0 评论 -
STL——杂项
function objects—— 行为像函数的对象,即一个类重载了()运算符,可以像函数一样用括号和传入参数,如 class PrintInt { public: void operator() (int elem) const { cout } };for_each (coll.be原创 2012-05-02 16:38:05 · 585 阅读 · 0 评论 -
STL——常见的一些问题
Q:以下两种定义方式,在进行map.clear()的时候,内存释放上有啥不同? typedef map MAPStr2FileAttr; typedef map MAPStr2FileAttr; A: clear()相当于earse(m.begin(), m.end()); 若定义的map的存储对象是一个类对象: 拷贝是整个STL(Stand转载 2013-01-18 17:39:55 · 2701 阅读 · 0 评论 -
Perforce
<br />恢复错误的提交<br />有两种方式:rollback 和 Back Out Submitted Changelist<br />Both of these operations restore a set of files to a previous state and are essentially faster, safer ways of undoing mistakes than using the p4 obliterate command (and you don'原创 2011-04-12 15:44:00 · 1311 阅读 · 0 评论 -
(转)Source Insight 经典教程
6 推荐Source Insight实质上是一个支持多种开发语言(java,c ,c 等等)的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我们当成源代码阅读工具使用。作为一个开放源代码的操作系统,Linux附带的源代码库使得广大爱好者有了一个广泛转载 2011-07-04 17:52:28 · 927 阅读 · 0 评论 -
WinDbg调试器使用
WinDbg配置和使用基础 WinDbg是微软发布的一款相当优秀的源码级(source-level)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。1. WinDbg介绍: Debugging Tools and Symbols: Getting Startedhttp://www.microsoft.com/whdc/devtools转载 2014-01-15 14:12:29 · 1353 阅读 · 0 评论 -
msvcrtd.lib和libcmtd.lib冲突 Link2005
VS2005链接问题: LNK2005错误 :error LNK2005: _free 已经在 libcmtd.lib(dbgheap.obj) 中定义以前经常遇到这个警告信息,因为运行并没有什么问题,所以也没深究。但是耿耿于怀那个“ 0 个错误,0 个警告”的成功提示,在网上搜了一下。原来问题出在默认库的引用选择上。VS2008,项目——属性——配置属性——C/C++——代码生成:他转载 2012-06-29 09:35:41 · 1292 阅读 · 0 评论 -
BCD码
Normal 0 7.8 pt 0 2 false false false MicrosoftInternetExplorer4 <!-- /* St转载 2009-12-16 09:58:00 · 1809 阅读 · 0 评论 -
《英雄联盟》支撑最高750万同时在线用户的聊天服务打造
摘要:回顾《英雄联盟》的发展无疑是一个高速成长的光辉史,然而这个光辉史赖以生存的基础设施却不得不克服一次又一次的挑战,历经一次又一次的迭代,就比如本次我们要说的聊天服务。【编者按】在2013年初马化腾被问及“过去两年腾讯在海外投资中最成功的案例是什么”时,他毫无疑问的回答:“投资美国的Riot Games,做出《英雄联盟》。”在那个时候,《英雄联盟》这款游戏仅上市3年,却以500万同时转载 2014-10-30 10:35:17 · 1847 阅读 · 0 评论 -
多进程和多线程的选择
关于多进程和多线程,教科书上最经典的一句话是“进程是资源分配的最小单位,线程是CPU调度的最小单位”,这句话应付考试基本上够了,但如果在工作中遇到类似的选择问题,那就没有这么简单了,选的不好,会让你深受其害。经常在网络上看到有的XDJM问“多进程好还是多线程好?”、“Linux下用多进程还是多线程?”等等期望一劳永逸的问题,我只能说:没有最好,只有更好。根据实际情况来判断,哪个更加合适就是转载 2012-05-07 10:40:35 · 741 阅读 · 0 评论 -
进程/线程同步——Critical Section,Mutex,Semaphore,Event区别
转自:http://blog.163.com/around-wind/blog/static/271230752009084037565/临界区(Critical Section) 保证在某一时刻只有一个线程能访问数据的简便办法。在任意时刻只允许一个线程对共享资源进行访问。如果有多个线程试图同时访问临界区,那么在有一个线程进 入后其他所有试图访问此临界区的线程将被挂起,并一直转载 2012-04-28 17:22:52 · 6975 阅读 · 0 评论 -
Editcap 工具用法
<br />options:-c <packets per file><br />Splits the packet output to different files based on uniform packet counts with a maximum of <packets per file> each. Each output file will be created with a suffix -nnnnn, starting with 00000. If the specifie转载 2011-03-17 09:59:00 · 7563 阅读 · 0 评论 -
eclipse使用技巧
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Al原创 2011-02-21 10:35:00 · 659 阅读 · 0 评论 -
系统信号说明和应用
SIGHUP 终止进程 终端线路挂断SIGINT 终止进程 中断进程SIGQUIT 建立CORE文件终止进程,并且生成core文件SIGILL 建立CORE文件 非法指令SIGTRAP 建立CORE文件 跟踪自陷SIGBUS 建立CORE文件 总线错误SIGSEGV 建立CORE文件 段非法错误SIGFPE 建立CORE文件 浮点异常SIGIOT 建立CORE文件 执行转载 2010-12-29 17:21:00 · 913 阅读 · 0 评论 -
五种开源协议的比较
<br />当Adobe、Microsoft、Sun等一系列巨头开始表现出对”开源”的青睐时,”开源”的时代即将到来!<br />最初来自:sinoprise.com/read.php?tid-662-page-e-fpage-1.html(遗憾的是这个链接已经打不开了),我基本未改动,只是进行了一些排版和整理。<br />参考文献:http://www.fsf.org/licensing/licenses/<br />现今存在的开源协议很多,而经过Open Source Initiative组织通过批转载 2010-10-19 11:18:00 · 1221 阅读 · 0 评论 -
网络字节序与主机字节序
1、本地字节序由于不同的计算机系统采用不同的字节序存储数据,同样一个4字节的32位整数,在内存中存储的方式就不同. 字节序分为小尾字节序(LittleEndian)和大尾字节序(Big Endian), Intel处理器大多数使用小尾字节序,Motorola处理器大多数使用大尾(Big Endian)字节序;小尾就是低位字节排放在内存的低端,高位字节排放在内存的高端。例如一个4字节的值为0x1234567的整数与高低字节对应关系:01234567Byte3Byte2Byte1Byte0高位字节-转载 2010-08-03 11:14:00 · 965 阅读 · 0 评论 -
网址
http://d.download.youkuaiyun.com/down/1136752/anglecloudy原创 2010-05-21 18:30:00 · 715 阅读 · 0 评论 -
字节序(Endian),大端(Big-Endian),小端(Little-Endian)
在各种计算机体系结构中,对于字节、字等的存储机制有所不同,因而引发了计算机通信领域中一个很重要的问题,即通信双方交流的信息单元(比特、字节、字、双字等等)应该以什么样的顺序进行传送。如果不达成一致的规则,通信双方将无法进行正确的编/译码从而导致通信失败。目前在各种体系的计算机中通常采用的字节存储机制主要有两种:big-edian和little-end转载 2010-01-14 17:34:00 · 634 阅读 · 0 评论 -
线程的高级编程
转自 http://hi.baidu.com/ismayday/blog/item/68aac2fd5af71643d7887d3b.html一.pthread_create()之前的属性设置1.线程属性设置我们用pthread_create函数创建一个线程,在这个线程中,我们使用默认参数,即将该函数的第二个参数设为NULL。的确,对大多数程序来说,使用默认属性就够了,但我们还是有必要转载 2009-09-03 14:44:00 · 1013 阅读 · 0 评论 -
死锁的产生和避免
死锁的发生必须具备以下四个必要条件。 1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。 2)请求和保持条件:指进程已经保持至少一个资源,但又提出了新的资源请求,而该资源已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。原创 2012-05-08 11:15:39 · 764 阅读 · 0 评论 -
ASCII码表在线查询
http://www.weste.net/tools/ASCII.aspASCII码表在线查询(1.0 beta 1)输入一个待查字符: ASCII码对照表下表列出了字符集中的 0 - 127。 代码字符代码字符代码字符代码字符0 32[空格]64@96`1转载 2012-06-28 11:14:59 · 2238 阅读 · 0 评论 -
通过任务分割提高嵌入式系统的实时性
摘要:分析长任务对嵌入式系统实时性的影响,在此基础上提出任务分割是提高嵌入式系统实时性的一种有效途径;总结长任务分割的方法,给出一个通过任务分割提高嵌入式系统实时性的实例。 关键词:嵌入式系统 实时内核 时间片 任务分割 引言 随着工业的飞速发展,人们对系统实时性的要求越来越高。计算机技术的进步客观上也为进一步提高实时性提供了可能。因此近年来,嵌入式实时系统的研究已经成为单片同应用领域的又一大热点转载 2009-07-05 22:28:00 · 944 阅读 · 0 评论 -
Windows 下主程序与动态库(*.dll)释放对方分配的内存操作要点
同样的代码程序:主程序中释放了一块在 动态库(*.dll)或共享库(*.so) 中分配的内存,Windows 将会出现程序崩溃,而 Linux 则正常运行。在 linux 下,每个进程只有一个 heap ,在任何一个共享库模块 *.so 中通过 new 或者 malloc 来分配内存的时候都是从这个唯一的 heap 中分配的,那么自然你在其它什么转载 2014-11-13 11:06:48 · 3675 阅读 · 0 评论 -
关于LINUX C中函数strtok使用要点
strtok函数的使用是一个老生常谈的问题了。该函数的作用很大,争议也很大。以下的表述使用的源代码大部分来自于网络,我稍加修改作为例证。当然,本人水平有限,有不妥之处望各位多多指教。strtok的函数原型为char *strtok(char *s, char *delim),功能为“Parse S into tokens separated by characters in DEL转载 2014-06-13 09:41:16 · 967 阅读 · 0 评论