C/C++
文章平均质量分 79
u013148406
这个作者很懒,什么都没留下…
展开
-
什么情况下,类的析构函数声明为虚函数
1.第一段代码#include<iostream> using namespace std; class ClxBase{ public: ClxBase() {}; ~ClxBase() {cout << "Output from the destructor of class ClxBase!" << endl;}; void DoSomething() { cout <转载 2015-08-01 19:47:48 · 284 阅读 · 0 评论 -
指针使用注意事项
指针是个很强大的工具,可是正因为它太强大,所以要操作它不是件易事。操作不当造成的野指针,甚至会引起系统死机等比较严重的后果。 在编程的时候,告诫自己,注意下列几点: 避免使用未初始化的指针,声明一个指针的时候一定要将它初始化或者直接赋值为NULL。 int *pInt = NULL; 在动态delete释放一个指针所指向的内存后注意将该指针置空,同理,对一个指针应用free之后,它的值不会改转载 2015-07-31 22:06:23 · 693 阅读 · 0 评论 -
类的内存空间占用
一个类的实例化对象所占空间的大小? 注意不要说类的大小,是类的对象的大小. 首先,类的大小是什么?确切的说,类只是一个类型定义,它是没有大小可言的。 用sizeof运算符对一个类型名操作,得到的是具有该类型实体的大小。 如果 Class A; A obj; 那么sizeof(A)==sizeof(obj) 那么sizeof(A)的大小和成员的大小总和是什么关系呢,很简单,一个对象的大小大于等于所转载 2015-08-04 21:49:16 · 455 阅读 · 0 评论 -
Bellman-ford存在负权的单元点最短路径
Bellman-ford算法原创 2015-11-30 19:08:15 · 404 阅读 · 0 评论 -
Dijkstra单元点最短路径(不含负权)
一、算法介绍Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。 与Bellman-ford不同的是,bellman-ford可处理含负权的图,Dijkstra不能处理含负权的图。除此之外Bellman-fo原创 2015-11-30 23:29:56 · 850 阅读 · 0 评论 -
Floyd_任意点之间的最短路径算法
一、算法介绍: Floyd–Warshall(简称Floyd算法)是一种著名的解决任意两点间的最短路径(All Paris Shortest Paths,APSP)的算法。从表面上粗看,Floyd算法是一个非常简单的三重循环,而且纯粹的Floyd算法的循环体内的语句也十分简洁。Floyd算法可以说是Warshall算法的扩展,三个for循环就可以解决问题,所以它的时间复杂度为O(n^3)。从本质上原创 2016-09-24 14:34:55 · 3001 阅读 · 0 评论