12 2011 档案
Fedora16配置Apache服务器
摘要:安装apacheyum install httpd现在配置下系统使得Apache能够随着系统启动而启动…chkconfig --levels 235 httpd on... 启动Apache:/etc/init.d/httpd start打开浏览器输入http://127.0.0.1/即可看到Apache的预留页。然后在/var/www/html路径下创建文件index.html内容为<html><head>Welcome to my web.</head></html>在浏览器中输入http://127.0.0.1 或者 localhost即可
阅读全文
飞机绕地球环行问题
摘要:飞机绕地球环行问题题目:已知每架飞机有一个油箱,飞机之间可以相互加油,一整油箱的油可以供一架飞机绕地球飞行半圈。为使至少一架飞机绕地球一圈回到飞机起飞的机场,至少需要使用几架飞机,飞行几个架次?所有飞机从同一飞机场起飞,而且必须安全返回机场,不允许中途降落,一架飞机起飞一次算作一架次,加油时间可以忽略。计算法(johnny原创):设飞机油箱容量为V,绕地球飞行一圈的总行程为L,初始时有三架飞机A/B/C,飞机耗油情况为2V/L (油量/行程)。设第一段三个飞机共同飞过的路程为s1.则:C可加给他人的油(考虑到自身返回):V – 2 * s1 * 2V/L该值必须大于0,解的s1 < L/
阅读全文
工程素养
摘要:工程素养 译文: 在工程领域,每一个工程师都应该具备的精神是: 我能够很好地处理所面临的问题。 不论究竟是怎样的问题,一定有解决的方法。这种解决方法是可知的,也是可行的。而唯一不去执行的原因就是所谓的,缺乏资源。 这种很好的处理方式应该具备一定的预见性。它要有能力处理一些未知的状况,甚至是不明确的行为。 保持相对简单而又能够处理所有复杂情况的方案,就是好的解决方案。 而这里有很多不去很好处理问题的借口:“我不知道该如何去做。”
通常来说,这只需要一些学习与探索的精神。“团队不会支持这种做法。”
在一个团队中应该由有经验的工程师做出决定,而不是所有人共同做出决定。我现在很累/困...
阅读全文
你的代码是否过于复杂?
摘要:你的代码是否过于复杂? 译文: 如果你的代码中出现了下列的情况,就说明你的代码过于复杂了:
你需要在代码中添加“hack”来使其正常工作。其他的开发人员经常问你一些代码块是如何工作的。其他的开发人员经常错误使用你的代码,并导致了不少的bug。有经验的开发人员不能一眼看出你代码的含义。你很害怕修改这部分的代码。管理层认为需要多人共同维护一个简单的类或者文件。很难添加新的特性。开发者经常为如何实现这段代码的功能而争论。这部分代码经常修改。原文:
Here are some clues that tellyou that your code may be too complex:Youhave...
阅读全文
openCV画的词法分析图
摘要:花了将近一整天的时间,才用openCV把这张词法分析状态转换图画出来。发现自己代码的健壮性与重用性如此之差。看来要练一下算法了,来年多看点open的linux源码。附图(1022*4500):
阅读全文
C++构造函数与初始化列表
摘要:C++引入构造函数的目的在于对变量的初始化做出强制,因为人们发现,程序的错误,很大程度上来说,都是由变量没有初始化造成的。 因此,一种很好的编程习惯就是,在定义变量的时候直接初始化。而在C++中,在变量定义时,系统会自动调用变量的构造函数对变量进行初始化。只要将相应的初始化代码放在构造函数中,就能够保证该类在实例化对象的时候能够给对象赋以理想的初值。 而事实远远没有这么简单。 实际上,程序在进入构造函数的大括号体时,就已经完成了变量的定义(也就是分配内存空间)。这就难免会造成这样的一种情况:在对象被构造时,程序进入构造函数大括号体之前,首先调用对象的default构造函数,...
阅读全文
【测试成功】Fedora16下编译安装OpenCV方法
摘要:cd ~wget http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.3/OpenCV-2.3.0.tar.bz2tar -xvf OpenCV-2.3.0.tar.bz2cd OpenCV-2.3.0/mkdir releasecd releasecmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..makesumake installvim /etc/ld.so.c
阅读全文
2011:那些逝去的IT英才
摘要:艾伦·萨克斯(A. Sachs)有句话是这么说的:“死比生更普遍,人皆有一死,但并非谁都活过”。的确,得过且过的人无数,但是真正活过的人不多。2011年终将近,此刻,我们应该纪念一下一些今年逝去的人,虽然他们逝去了,但是凭借着在技术界、甚至在全世界做出的卓越影响,他们完全可以无愧地说:“我们活过了”。乔布斯(1955年2月24日-2011年10月5日)杰出的创新者,纯粹的开拓者,有谁能够像他那样终其一生照耀整个业界,变革整个行业?虽然他并不能将每一样东西都点石成金,但是,作为我们这个时代最杰出的发明者之一,他一定会被我们久久铭记。乔布斯对细节的关注、他的商业天才,还有专注以及无情的内
阅读全文
C++流操纵算子(格式控制)
摘要:输入/输出的数据没有指定格式,它们都按缺省的格式输入/输出。然而,有时需要对数据格式进行控制。这时需利用ios类中定义的格式控制成员函数,通过调用它们来完成格式的设置。ios类的格式控制函数如下所示:longflags()const返回当前的格式标志。longflays(longnewflag)设置格式标志为newflag,返回旧的格式标志。longsetf(longbits)设置指定的格式标志位,返回旧的格式标志。longsetf(longbits,longfield)将field指定的格式标志位置为bits,返回旧的格式标志。longunsetf(longbits)清除bits指定的格式.
阅读全文
感悟数据封装
摘要:感悟数据封装通常,人们将“把数据和函数捆绑在一起”以及“隐藏实现”的操作称为数据封装。今天在实验室调试了一个同学矩阵加减乘除的程序,切身体会到数据封装之重要性。情况是这样的,一个矩阵加减乘除的题目,要求矩阵是稀疏矩阵,他就建了一个三元组,分别存储矩阵中元素的行/列/数据。然后再将这个三元组存储在数组中构成这个矩阵。而老师要求他改为用类似于邻接链表的方法实现。在调试的过程中,我充分体会到了逻辑不清晰以及数据耦合度高所带来的痛苦。因为他的矩阵是在数组中存储的,在整个程序中所有相关的操作都是通过访问数组下标实现的,也就是说,数据的存储结构在程序中的所有地方都是透明的,毫无抽象与封装的概念可言。那么在
阅读全文
C++ static / const /static const 型成员变量
摘要:C++static / const /static const型成员变量一 static关键字的两类作用在C++中,static关键字的两类作用分别是:控制可见性与 控制存储类型。二 static成员变量的来源staitc类型成员变量的出现是为了解决同一个类的所有对象共享参数的问题,实际上就是对存储类型的控制。在C语言中,这样的控制往往通过全局变量直线。而使用static成员变量的方法与使用global类型变量方法的相比有明显的优点:作用域,staticmember是在class的作用域中的,它能够防止命名的冲突。数据封装,staticmember可以是private类型的。易于理解。三 st
阅读全文
浙公网安备 33010602011771号