程序设计的心得
文章平均质量分 69
albert future
我就是一个喜欢关注科技创新,喜欢结交志同道合的朋友的一个学生,平时喜欢自己动手做些小东西,是个技术狂
展开
-
Windows7配置QT-Android开发环境!
配置QT5.2.0-Android版本:进行windows7下的软件开发~不用使用eclipse开发android软件,配置之后就可以向写C++代码一样,去写APP在Android手机上去运行了!软件配置:请保证您的电脑上只有一个Qt,如果您的电脑上之前安装过Qt的其他版本,请您卸载带,主要要将全不的组件都卸载掉,还要清楚您的系统环境变量中的某些添加项。因为Qt-for-android-5原创 2014-02-10 09:12:09 · 8246 阅读 · 10 评论 -
面试中你不可回避的C、C++的问题(二)
1.如何将a,b的值进行交换,并且不适用任何中间变量#include void first(int a,int b){ a=a+b; b=a-b; a=a-b; printf("%d %d\n",a,b);}void second(int a,int b){ a=a^b; b=a^b; a=a^b; printf("原创 2014-02-28 17:58:33 · 7878 阅读 · 1 评论 -
面试中你不可回避的C、C++的问题(一)
1. 局部变量与全局变量问题 (使用’ ::’)2. 如何在另个文件中引用一个全局变量 (extern)3. 全局变量可以定义被多个C文件包含,并且是static4. static全局变量就是静态全局变量,static限制了全局变量的作用域5. static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝.6.原创 2014-02-28 12:01:05 · 11706 阅读 · 6 评论 -
面试中你不可回避的C、C++的问题(四)
在IT企业面试中往往会让你手写一段代码,然后讨论,其实一般的代码都不是很难,但是技巧性较强,所以很多同学心中有点犯怵,其实大可不必,在准备面试前自己多写写基本思维的代码,对面试还是有好处的。自己也要找工作,所以将一些比较重要的问题,拿出来更大家一起晒晒,共同进步!问题一:基本的阶乘-递归问题基本模式:#include int Factorial(int n){ if(1=原创 2014-03-01 17:22:05 · 9374 阅读 · 0 评论 -
面试中你不可回避的C、C++的问题(三)
本节继续上一次的关于sizeof的讲解:这次主要是探讨一下,关于sizeof对于类以及对象之间的内存的大小的关系二维指针域数组的关系#include int main(){ //存储的是指针所以是3*4*4=48 int ** a[3][4]; printf("%d\n",sizeof(a));//48 char** b[3][4]; pr原创 2014-03-01 16:19:59 · 8273 阅读 · 0 评论 -
对于IP地址检测问题的考虑!
今天需要写一个远程登陆的小界面,其中涉及到IP地址和Port的输入的检测!其中需要检测的内容是: 1.要能输入域名、IP地址和端口 2.要支持IPv4、IPv6的IP地址 3.合法的检测IP地址首先我自己写了一下IP地址的解析程序bool CheckInputIP(const string &arg){ cout << "A原创 2014-04-03 21:09:45 · 3559 阅读 · 0 评论 -
利用牛顿迭代法求解非线性方程组
最近一个哥们,是用牛顿迭代法求解一个四变量方程组的最优解问题,从网上找了代码去改进,但是总会有点不如意的地方,迭代的次数过多,但是却没有提高精度,真是令人揪心! 经分析,发现是这个方程组中存在很多局部的极值点,是用牛顿迭代法不能不免进入局部极值的问题,更程序的初始值有关! 发现自己好久没有是用Matlab了,顺便从网上查了查代码,自己来修改一下!先普及一下牛顿迭原创 2014-05-08 22:09:30 · 60647 阅读 · 44 评论 -
对于C11中的正则表达式的使用
Regular Expression Special Characters"."---Any single character(a "wildcard")"["---Begin character class"]"---End character class"{"---Begin count"}"---End count"("---Begin grouping")"原创 2014-05-14 21:02:38 · 10969 阅读 · 2 评论 -
字符串处理
1. 比较两个文本文件并打印出它们第一个不相同的行(文件每行字符数不多于80)。#include #include #include int main(void){ FILE * fp1 = NULL; FILE * fp2 = NULL; char str1[100],str2[100]; fp1 = fopen("test1.txt","r");原创 2014-04-26 00:29:55 · 8215 阅读 · 5 评论 -
遗传算法解决单变量函数值得优化问题
最近稍微学习一下智能算法的设计,就满Internet搜索,最终发现遗传算法是大家学习最多的,也是在各个领域内进行函数优化,解析解求解过程中很重要的一种方法!学习遗传算法,首先为了上手较快,我推荐大家先使用Matlab,这个工具进行矩阵分析有应用,真的很管用,而且上手特别快! http://bbs.pinggu.org/biaoqian/matlabbb/ 这个是Matlab相关原创 2014-01-16 10:03:12 · 5592 阅读 · 0 评论 -
C++中虚函数的理解,以及简单继承情况下的虚函数的表!
面向对象的三大特征=封装性+继承性+多态性 封装=将客观事物抽象成类,每个类对自身的数据和方法实行权限的控制 继承=实现继承+可视继承+接口继承 多态=将父类对象设置成为和一个或者更多它的子对象相等的技术, 用子类对象给父类对象赋值之后, 父类对象就可以根据当前赋值给它的子对象的特性一不同的方式运作C++的空类有原创 2015-03-21 20:49:26 · 9364 阅读 · 0 评论 -
C++中必须要知道的知识
//深入理解一下继承以及虚函数的空间大小#include <iostream>using namespace std;class A{ char A[100];};class B:public A{ char B[100];};class C:public A{ char C[100];};class D:public B,public C{ c原创 2015-03-30 00:44:15 · 6947 阅读 · 0 评论 -
C++中的存储技术
/* *C++中的存储技术 *我们来讨论C++的存储技术包括C++的存储类型,C++存取修饰符和C++对象的生存期三部分 *C++存储类型 *主要有三种类型: *extern存储,static存储,regsiter存储类型 *1.extern存储类型 *由于C语言允许将分别编译的大程序的各个模块连接在一起,以提高编译速度,协作大项目管理 *因此必须将程序需要的所有的全局变量通过某种原创 2014-02-04 18:24:05 · 1817 阅读 · 2 评论 -
教你几种排序的基本算法
现有基本的数据输出:void OutPutSortResult(int num[],int length_num,int index){ printf("this is %03d-th!\t",index); for(int i=0;i<length_num;i++) printf("%d ",num[i]); printf("\n");}写原创 2013-05-12 15:07:24 · 1706 阅读 · 0 评论 -
对于“循环”,你的判断标准是什么?
我们在写程序中时,往往只是去写各种for循环,但是往往在出问题时,就会出在循环的检查上:循环是从顶部进入的吗?循环的初始化是靠近循环顶部吗?循环是死循环还是事件驱动循环?它的结构很清楚吗?是C的for循环吗?循环头包含了全部的循环控制条件了吗?循环体用begin和end或类似的结构去表明以免在修改时出错了吗?空循环还是非空循环?把循环内任务处理归结到一起了吗?放在头部还是放在结尾了?循原创 2013-08-18 19:59:15 · 1388 阅读 · 0 评论 -
在程序中,你敢怎样使用“goto”语句!
用goto是一个个人爱好的问题。“我”的意见是,十个goto中有九个可以用相应的结构化结构来替换。在那些简单情形下,你可以完全替换掉goto,在复杂的情况下,十个中也有九个可以不用;你可以把部分代码写成一个小的子程序调用;用嵌套的if语句;用状态变量代替;或者重新设计控制条件的结构。消除goto是很难的,但它却是很好的脑力活动。 如果100个用goto的情形中有一个靠goto很好地原创 2013-08-18 20:26:14 · 2578 阅读 · 0 评论 -
C++中的“动态内存管理”,你知道多少!
当你的程序运行时,突然的崩掉了;当你的大程序,运行时越来越慢;当你的程序,在不同的机子上运行的装填不一样;。。。你是否能想到是由于你的代码中对内存管理的缺失而导致,程序运行的诸多问题! 当一块内存中的数据没有价值时,他就成为垃圾,在我们的程序的“小城市中”,如果来进行垃圾的回收,如何有效的管理资源,才是“城市”能否正常,良好运行的前提!垃圾回收的优缺点:原创 2013-08-19 10:21:50 · 1068 阅读 · 0 评论 -
垃圾回收的算法的选择!?
最近在看《C++编程艺术》,这本说讲的很深刻,讲到了垃圾回收算法!看着很是爽!就将一个信息摘录出来,供大家学习!选择垃圾回收的算法: 在为C++实现垃圾回收器之前,有必要确定垃圾回收使用的算法。在这里介绍三种典型的方法:引用计数、标记并清除、复制。在确定选择哪种方法的同时,我们先来浏览一下这三种算法:引用计数: 在引用计数中,每一块动态分配的内存都与一个引原创 2013-08-21 22:27:09 · 1490 阅读 · 0 评论 -
如何用C++来建立自己的垃圾回收机制?!
在C++中创建垃圾回收器: 由于C++是一种功能丰富强大的语言,因此有许多不同的方法可以建立垃圾回收器。一个明显但受限制的方法就是基于建立一个垃圾回收器,想要使用垃圾回收的类可以从这个类继承。这样做可以使得一个类接一个类地实现垃圾回收。但遗憾的是,这种方案太有限而不能令人满意! 更好的解决方案是建立一个可以被任何动态分配的对象使用的垃圾回收器。为了提供这种解决方案,垃圾原创 2013-08-21 20:53:51 · 1792 阅读 · 1 评论 -
C++应用程序性能优化(书)内存管理 (转载!!!)
本文是笔者看到的关于程序运行时内存管理的书籍!很是不错,让人读来很有深度,读此文需要一定的内功修为,为了方便广大读者学习!知识共同分享,将本文转载过来:http://blog.csdn.net/gaoteng1984/article/details/1681862 本质上虚拟内存就是要让一个程序的代码和数据在没有全部载入内存时即可运行。运行过程中,当执行到尚未载入内存的转载 2013-08-22 09:54:11 · 1810 阅读 · 0 评论 -
准程序员必须知道的内存那点事儿----指针域数组的对比
指针域数组的对比: C++/C程序中,指针和数组在不少地方是可以互相替换着用,让人产生一种错觉,以为两者是等价的。 数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命周期内保持不变,只有数组的内容可以改变。 指针可以随时指向任意类型的内存块,它的特征是"可变",所以我们常用指针来操原创 2013-08-13 17:11:15 · 1124 阅读 · 0 评论 -
再探“指针”奥秘--换个角度看“指针”!
指针: 指针是现代编程中最容易出错的区域。使用指针式非常复杂的,只有你对所有编译程序内存管理方式有非常深刻的理解之后,才能正确的使用它。理解指针: 在概念上,每个指针包括两部分:内存存储单元以及对这个存储单元中内容的解释 内存中的存储单元--- 内存中的存储单元就是地址,通常是用十六进制数来表示的。指针本身只含有地址,要使用指针指向的数据,你原创 2013-08-18 16:49:18 · 1136 阅读 · 0 评论 -
使用遗传算法解决多变量函数优化问题!
很多朋友在碰到多变量值优化的问题的时候不能很好的将问题转化,利用有效编码的方法将解的个数,解的编码很好的很合理的进行设计,因此不能利用遗传算法进行问题的求解! 其实,简单的来说,就是将多个变量的数值编码编排进去,进行组合,只需要增长基因个体的长度,但是要明确每个变量具体的位置,然后让每个变量转化成二进制的等长编码,组合在一起,就可以来运算了! 当然,我们要利用一个矩原创 2014-01-16 22:17:48 · 45984 阅读 · 19 评论 -
C++中的'&'和const的使用注意事项!
#include using namespace std;/* *引用(References)类型 *这是C++语言的一个特殊的数据类型描述,用于在程序的不同部分使用两个以上的变量 *指向同一个地址,使得对其中任一个变量的操作实际上都是对同一地址单元进行的。 *在这种两个以上变量名的关系中,被声明为引用类型的变量名称之为实变量的别名。 *语法格式: *类型名 & 引用型函数名或原创 2014-02-04 17:47:19 · 1918 阅读 · 0 评论 -
在C++笔试中常见的题目解析
我看了一些资料,找到一些在笔试中常用到的题目的解析,自己从中挑了一些作为练习,拿出来供大家参考! 直接以代码的形式给出了部分题目的解析代码!与君共勉之!//在C++笔试中常见的题目解析#include <iostream>#include <algorithm>#include <time.h>using namespace std;//1.链表反转class ReverseLink{p原创 2015-03-22 16:11:32 · 6343 阅读 · 0 评论