- 博客(16)
- 资源 (2)
- 收藏
- 关注
原创 万能的函数 之 接口继承 实现继承~~~
在public继承中,(public 继承表示的关系是 “is a ” 的关系),其类中定义的函数主要有三类:pure virtual函数,impure virtual函数以及non-virtual函数,这三种函数决定了public继承中的两个重要概念 : “ 函数接口继承” 以及 “函数实现继承”。那么接下来将针对这样一个不简单的问题做一些简介。 考虑如下的类定义: class Shape
2014-04-27 15:01:37 1409
原创 C++ 转型动作 尽量避免 以及 那些意想不到的威胁
看完EffectiveC++的关于转型的章节,顿时觉得周围的代码都处在悬崖边上~~ C的旧式转型: inta = 10; double b = (double)a; 对于C++的四种转型函数, const_cast 去掉对象的常量性(只此一个操作符有此功能!) dynamic_cast 一般用于继承体系中某对象的归属,耗费较大 reinterpret_cast 低
2014-04-22 09:34:43 2075
原创 从为什么要将基类的析构函数定义为虚函数谈起~~
首先,做一个最简单的实验,在电脑上运行下面的代码,将会产生运行错误,这或许会使你百思不得其解: #include using namespace std; class Base { private: int a; public: ~Base(){cout << "Base dtor..." << endl;} }; class Derived : public Base {
2014-04-28 20:58:13 2700
转载 多重继承和虚继承的内存布局
这篇文章主要讲解虚继承的C++对象内存分布问题,从中也引出了dynamic_cast和static_cast本质区别、虚函数表的格式等一些大部分C++程序员都似是而非的概念。原文见这里(By Edsko de Vries, January 2006) 敬告: 本文是介绍C++的技术文章,假定读者对于C++有比较深入的认识,同时也需要一些汇编知识。
2014-04-27 13:45:56 878
原创 BFS——surrounded region
Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is captured by flipping all 'O's into 'X's in that surrounded region. For example, X X X X X O O X
2014-04-24 22:56:22 1363 1
原创 glpk 使用简介
本文只是简介glpk的简单使用~不涉及原理~做一个简单的备忘~~ GLPK 使用简介: 这几天第一次接触glpk,对于输入文件的格式,有一些繁琐,但不得不承认glpk真的很强大。 通过下面的一个简单(无实际意义的)例子,说明在glpk中的一些简单的格式。 简单示例: var x1; //每一行以分号结尾 var x2; var x3; var x4; var x5; var e13
2014-04-23 15:21:53 12440
原创 数据结构 之 priority_queue 优先队列
C++中优先队列的实现是利用堆来实现的。在STL库中的make_heap , pop_heap以及push_heap来实现的。 主要的操作有: 1 push : push进一个元素,并调整堆 2 pop : 弹出对首元素,并调整堆 3 size : 返回队列中的元素个数 4 empty : 队列是否为空 5 top : 取出队首元素,但不删除该元素 #include
2014-04-18 23:44:02 1629
原创 C strlen vs sizeof
strlen是函数。sizeof是操作符。。下面一个简单的程序说明这件事: #include #include using namespace std; int main() { char str1[] = "To be or not to be"; cout << "sizeof [] : " << sizeof(str1) << endl; //str1占用的内存空间 cou
2014-04-18 10:02:06 1559
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人