自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 linux c 中简单的管道实现

管道一般用与父子进程之间通信,下面是一个简单的父子进程通信事例: #include #include int main(){ int fd[2]; //管道入口fd[0]为读,fd[1]为写入口 char r_buf[100]; char w_buf[20]= "hello word!"; pid_t pid; if(pipe(f

2012-03-30 16:50:48 3901

原创 Linux c 中alarm,signal,pause的使用说明

直接看代码#include #include #include void myfunc(){ printf("myfunc\n"); exit(0); //如果没有此句,程序在主函数中继续运行,输出never run}int main(){ unsigned int i; int time; alarm(9); sleep(2

2012-03-30 16:40:23 5803 1

原创 编写简单的makefile

在介绍makefile前,先介绍linux上如何调用类的方法。下面简单的介绍如何在main.c 中调用print.c中的函数和类。见实例:print.h#include int printHello();class People{ public: People(); ~People(); void PeopleHello();};

2012-03-24 20:25:59 2105 1

转载 C++中改变setw(n)的对齐方式

转自 : http://www.cnblogs.com/wxxweb/archive/2011/06/01/2065671.html使用setw(n)设置输出宽度时,默认为右对齐,如下:// include // include std::cout std::cout std::cout std::cout //// 输出结果:// //     1

2012-03-17 18:51:01 6733

原创 虚继承的理解以及需要注意的问题

首先需要对虚继承进行了解:(前一篇文章有讲解)      下面的图对一般继承和虚继承很好的解释。一般的继承为Bottom构造时先构造left和right,并且同时为left和right构造各自的Top,这样Bottom中有两个Top。而虚继承Bottom构造时屏蔽了left和right对Top的构造,而是使用自己对Top的构造。下面以一个事例进行分析:如图为继承关系:A中有成员

2012-03-11 15:31:56 1031

转载 多重继承和虚继承的内存布局

转自:http://blog.csdn.net/littlehedgehog/article/details/5442430 感谢作者    这篇文章主要讲解虚继承的C++对象内存分布问题,从中也引出了dynamic_cast和static_cast本质区别、虚函数表的格式等一些大部分C++程序员都似是而非的概念。原文见这里(By Edsko de Vries, January 200

2012-03-11 10:36:07 600

原创 指向函数的指针问题(一般函数和类函数)

指向函数的指针就是用指针保存函数的地址具体实现如下:void sub(int a,int b);int _tmain(int argc, _TCHAR* argv[]){ void (*t_vP)(int a,int b); //定义函数指针 t_vP = sub; //对函数指针赋值 (*t_vP)(5,6);

2012-03-10 10:45:57 668

原创 c++程序编译过程总结(个人理解)

今天做到模版的问题,无法分离定义,在网上找到一些资料,无意间接触到了c++程序的编译过程。经学习理解后总结如下:     对于c++工程中含有很多文件,其中.cpp和.h我们比较熟悉。coder将程序写在这两个文件中,具体的编译和运行由编译器自己去完成。 我们就会提出问题,编译器是如何进行编译的呢。        首先,预编译,就是将一些宏进行替代以及将.h展开到.cpp中。

2012-03-09 20:22:17 1916 2

转载 为什么C++编译器不能支持对模板的分离式编译 (精华编译原理)

转自 : http://www.cppblog.com/michaelgao/archive/2008/10/09/63571.html 为什么C++编译器不能支持对模板的分离式编译 刘未鹏(pongba) /文 首先,C++标准中提到,一个编译单元[translation unit]是指一个.cpp文件以及它所include的所有.h文件,.h文件里的代码将会被扩展到包含它的

2012-03-09 14:54:07 1001 1

转载 lib和dll的关系

转自:http://www.cnblogs.com/ShaneZhang/archive/2011/07/05/2098553.htmllib是和dll对应的。lib是静态链接库的库文件,dll是动态链接库的库文件。 所谓静态就是link的时候把里面需要的东西抽取出来安排到你的exe文件中,以后运行你的exe的时候不再需要lib。所谓动态就是exe运行的时候依赖于dll里面提供的功能,

2012-03-09 13:57:30 1134

原创 类模版和函数模版需要注意的

函数模版要注意的地方见注释,代码如下:// test.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include using namespace std;/* * 函数模版的格式为: template 函数名(函数参数); * 模版函数的实现要和声明放在一起,如果不放在一起,在实现的时候要重新

2012-03-09 10:08:20 1930 1

转载 修改名字(表名,列明等)

转自:http://space.itpub.net/10678339/viewspace-522818create table TEST(  ID   NUMBER not null,  NAME VARCHAR2(20))ALTERTABLESCOTT.TESTRENAMETOTEST1--修改表名ALTERTABLESCOTT.TESTRENAMECOLUMNNAM

2012-03-08 18:42:44 1129

转载 Oracle 默认表空间(default permanent tablespace) 说明

本文转自:http://blog.csdn.net/tianlesoftware/article/details/7084700一.默认表空间说明在oracle9i中,如果未用 DEFAULT TABLESPACE 子句创建的所有用户将以SYSTEM表空间作为它们的默认表空间。同时也不能为数据库指定一个默认的表空间。在Oracle 10g中定义了数据库级别的默认表空间USERS,在

2012-03-07 19:33:19 990

原创 Console环境下的ini文件的读写

ini文件的读写问题,搞了一下午终于弄好了,纠结呀~~~~~     一般ini文件读写都是在mfc中完成的,这次要在Console环境中实现。在网上找了好久,都是东抄西抄的,都一样。。。而且都是在mfc下实现的,看来写东西的人越来越少了,让人心寒呀,最可悲的是,转载人家的还大言不惭的写着原创。nm都这么巧,跟人家创的一样。。。。。。废话不多说了。    好了,现在把自己学到的ini读写与

2012-03-04 18:58:01 1470 2

原创 const需要注意的

1.对于函数后边添加const后,函数成为const类型,该函数中不允许对类中成员进行修改,可以认为是在该函数中,类成为了const类型。另外要注意的是,const函数中只能调用const类型的函数。2.对于const类型的变量来说,只能把const的赋值给非const,不能把非const赋值给const,因为const只能初始化一次,即使定义时初始化,系统也会给予默认的初始化。不能将cons

2012-03-04 10:22:22 708

原创 堆排序实现

// 算法.cpp : 定义控制台应用程序的入口点。//对于堆排序来说,逻辑上是树的形式,实际存储的形式还是数组。只是对下标进行一定的计算获得逻辑上树的形式。//此堆的结构为0号位为根结点,没有左子树,右边接着以1号位置为根结点的子树。#include "stdafx.h"#include using namespace std;const int HEAP

2012-03-03 11:48:51 823

原创 快排c++实现

// 算法.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include using namespace std;void QuickSort(int e[], int first, int end);int _tmain(int argc, _TCHAR* argv[]){ srand(unsigned(time(N

2012-03-03 10:32:30 13061

原创 c++中为什么刷新缓冲区

之前用endl一直以为它只是一个回车换行的功能,刚刚才知道原来endl还有一个功能使用来刷新缓冲区的。除了endl之外,c++中还有ends,flush,unitbuf,nounitbuf。为什么要刷新缓冲区呢?        一句话,为了让缓冲区的信息立即强制输出。       如: cout // test.cpp : 定义控制台应用程序的入口点。//#include

2012-03-02 19:08:42 8892 1

原创 文件读取信息,eof()多读问题

从文件中读出数据,通过eof函数来判断该文件是否结束,但是文件最后的一个字符或者数字被多读一次。比如下面代码: ifstream infile; infile.open("d:\\a.txt"); if(!infile.is_open()) //打开文件 { cout << "失败" << endl; }else { string str; whi

2012-03-02 18:21:38 6793 5

转载 MERGE用法

MERGEMERGE是什么,如何使用呢?先看一个简单的需求如下:从T1表更新数据到T2表中,如果T2表的NAME 在T1表中已存在,就将MONEY累加,如果不存在,将T1表的记录插入到T2表中。DROP TABLE T1;CREATE TABLE T1 (NAME VARCHAR2(20),MONEY NUMBER);INSERT INTO T1 VALUES ('A',10);INSERT IN

2012-03-01 10:49:25 5271 1

转载 with check option(转载)

我们来看下面的例子:create or replace view testviewasselect empno,ename from emp where ename like ‘M%’with check option;这里我们创建了一个视图,并使用了with check option来限制了视图。 然后我们来看一下视图包含的结果:select * from testvie

2012-03-01 10:42:27 771

UNIX环境高级编程_第二版中文

影印中文第二版。扫描的非常专业,一点不斜。而且每章都有标签。感觉是个好东西给大家分享。

2012-08-29

空空如也

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

TA关注的人

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