c++
文章平均质量分 52
wenbie123
这个作者很懒,什么都没留下…
展开
-
虚拟继承
在谈虚拟继承前让我们先了解一下为什么需要虚拟继承: 多重继承 在多重继承中,基类的构造函数的调用次序既不受派生类构造函数初始化列表中出现的基类构造函数的影响,也不受基类在构造函数初始化列表中的出现次序的影响,它按照基类在类派生列表中的出现次序依次调用相应的基类构造函数。析构顺序与构造顺序逆序进行。 多重继承中,派生类的指针或引用可以转换为其任意基类的指针或引用。因此,转载 2012-03-18 16:19:08 · 289 阅读 · 0 评论 -
迭代器失效问题
众所周知当使用一个容器的insert或者erase函数通过迭代器插入或删除元素"可能"会导致迭代器失效,因此很多建议都是让我们获取insert或者erase返回的迭代器,以便用重新获取新的有效的迭代器进行正确的操作: view plaincopy to clipboardprint? iter=vec.insert(iter); iter=vec.erase(iter);原创 2012-03-18 14:03:34 · 355 阅读 · 0 评论 -
List 模板实现
// template.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include using namespace std; template class List { public: List(); void Add(T&); void Remove(T&); T * Find(T&); void Prin原创 2012-03-23 15:45:08 · 392 阅读 · 0 评论 -
在c语言环境下实现 C++中的getline函数 即在c语言中按行读取
//在c语言环境下实现 C++中的getline函数 即在c语言中按行读取 FILE * fp; char * send_msg = NULL; size_t len = 0; ssized_t read; while ((read = getline(&send_msg, &len, fp)) != -1) { printf("%s\n",send_msg); count++; s原创 2012-04-14 17:00:53 · 2484 阅读 · 0 评论 -
assert()
1 #include "assert.h" 2 void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。 请看下面的程序清单badptr.c: 显示代码打转载 2012-07-20 18:02:39 · 340 阅读 · 0 评论 -
umask()函数
现在我们已经描述了文件相关联的九个权限位,我们可以描述每个进程的文件模式创建的屏蔽字(mask)。 umask函数为进程设置 文件模式创建屏蔽字(file mode creation mask)平且返回上次的值。(这个函数时一些不返回错误中的一个). #include mode_t umask(mode_t cmask); returns:previous file mode creation转载 2012-07-26 15:43:42 · 3065 阅读 · 0 评论 -
socket
介绍 Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用 connect() 前的bind() 的结构而不知所措?等等… 好在我已经将这些事完成了,我将和所有人共享我的知识了。如果你了解 C 语言并想穿过网络编程的沼泽,那么你来对地方了。 -----------------------------------转载 2012-07-27 16:31:07 · 854 阅读 · 0 评论