2013年12月23日
摘要: 基本数据类型是构建其他所有数据类型的构造块,本人认为这部分是计算机编程的基础,值得得到大家的注意。 首先,在本章中作者提到了避免使用magic number。使用magic number这种做法是极其不值得提倡的,在C语言中我们在编程开始的时候应该把我们心中的常量用宏定义好,当我们需要这个常量的时候直接使用这个宏就可以了。但是假如我们直接使用这个常量,假设我们想定义我们心目中的在这个程序中允许出现的最小值,我们先将其看成0。在程序的迭代开发过程中,我们又允许负数的出现了,这时候我们需要将这个最小值减小。但是如果我们在很多地方直接用到了这个常量,那修改过程是极其残酷的。并且如果某个地方没有... 阅读全文
posted @ 2013-12-23 21:05 wwtbuaa 阅读(190) 评论(0) 推荐(0) 编辑
  2013年12月15日
摘要: 不多不说这是一次神奇的作业,作业一拖再拖,到最后发现。。。。首先,在一开始的最大字数和问题实现图形界面主要是由我的小伙伴邹同学完成的,所以当我第一次看到说要显示详细运行过程的时候感到很迷茫。第一感觉,应该写成多线程,然后通过进程间的通信让另外进程来显示运行过程。但是这种情况会产生一个问题,那就是自动运行很难处理。然后在熊英夫同学的提醒下,觉得可以将所有的过程先存储到一个文件,程序开始运行矩阵生成之后即将程序运行的结果与过程写到该文件中。但是这还是会有一个问题,那就是数据以什么形式存储呢?因为时间紧迫,所以这部分我就没有再自己设计结构,直接采用了网络上常用的json格式。初次接触到这个格式是在大 阅读全文
posted @ 2013-12-15 07:20 wwtbuaa 阅读(194) 评论(0) 推荐(0) 编辑
  2013年11月25日
摘要: 1。解释playprev函数的功能(1)把gm的子去除后转移gm的mark到之前的棋子并设置之前棋子为重画(2)如果当前棋子有吃掉,需要把吃掉的都重画(3)对吃掉的棋子采用迭代器,遍历数字设置nokilled和setstorn(4)重画public void playPrev(GoMove gm) { int i = gm.Point.X; int j = gm.Point.Y; Grid[i,j].removeStone(); m_gmLastMove = gameTree.peekPrev(... 阅读全文
posted @ 2013-11-25 08:05 wwtbuaa 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 不得不说真是没有意义的一次作业,lambda在C++里用的真是物超所值啊,智能指针用于实现这么大的功能也一点都不大材小用。智能指针的代码和运行结果#include#include#include#includeusing namespace std;int result(int n){ shared_ptr s(new char[13]); strcpy(s.get(),"Hello World!"); string s1(s.get()+12-n); *(s.get()+12-n)='\0'; string s2(s.get()); cout#includ 阅读全文
posted @ 2013-11-25 00:07 wwtbuaa 阅读(126) 评论(0) 推荐(0) 编辑
  2013年11月18日
摘要: 我真的非常讨厌C++,随便写写吧。理解C++变量的作用域和生命周期 #include2 using namespace std;3 char *s(){4 char b[] = “come on";5 return b;6 }7 int main(void){8 cout 2 using namespace std; 3 int *s1; 4 int *s2; 5 void getstring{ 6 int *a = new int(1); 7 int b = 1; 8 s1 = a; 9 ... 阅读全文
posted @ 2013-11-18 09:09 wwtbuaa 阅读(135) 评论(0) 推荐(0) 编辑
  2013年11月10日
摘要: 参阅的博客如下:http://msdn.microsoft.com/en-us/library/vstudio/hh567368.aspxhttp://herbsutter.com/elements-of-modern-c-style/http://en.wikipedia.org/wiki/C%2B%2B11http://www.stroustrup.com/C++11FAQ.htmlhttp://www.cnblogs.com/zhuyp1015/category/370450.html (中文)提出的问题如下:1.c++11的代码与之前的代码是否完全兼容?2.在c++中lamda演算是否 阅读全文
posted @ 2013-11-10 22:07 wwtbuaa 阅读(102) 评论(0) 推荐(0) 编辑
  2013年11月3日
摘要: 经过这几天的深思熟虑我和小明同学将这次作业基本的完整了,可能界面略丑陋,但是基本功能均已实现。我们的服务器端采用python编写,因为服务器端是这次作业的难点,而python中有一个叫做web.py的轻量级框架使用效果极好,并且不用编写配置文件,其对URL的处理很简练。对于客户端我采用了python编写小明选择了ruby,但是由于我的客户端有一些bug需要再交互模式下使用,所以我们将它抛弃而选择使用小明的客户端。由于代码编写的我身心疲惫,我就简略说一下我们本次编写过程中遇到的困难点: 1.第一次使用web.py 花费不少时间来学习 2.客户端并发较多,导致部分客户端... 阅读全文
posted @ 2013-11-03 23:45 wwtbuaa 阅读(136) 评论(1) 推荐(0) 编辑
  2013年10月28日
摘要: 1.准备工作 本次结对编程我们对项目本身就行了分工,既然是测试来驱动开发,那么我们就把本次工作分成了测试与生成两个部分,小明同学负责生成测试数据,而我写测试程序检测测试结果是否正确,相对来说还是小明同学的那部分较为复杂。因为若想得到正确的结果,测试数据必然不能随机生成。然后我们就开始了我们的工作。2.思路分析 先看下测试程序需要测试哪些功能? a) Stage 1 a. Every phrase in the input file is covered once and only once. b. No less than 2 of the phrases must be ... 阅读全文
posted @ 2013-10-28 10:17 wwtbuaa 阅读(201) 评论(2) 推荐(0) 编辑
  2013年10月21日
摘要: 1.分工准备 这次的工作是结对编程,在第二次作业中我是使用python完成的作业,而小明是使用C完成的作业。因为打算使用动态链接库的方式将第二次的代码嵌入到本次的作业中,而python生成动态链接库不易实现,因此采用了小明的第二次代码。 因连通区域的解决方案在第二次作业中并没有实现,因此我们本次作业不能够实现解决联通区域的答案。本次作业的编码工作由小明同学来实现,鉴于他的代码能力比较强,并且本人并不是很擅长写图形界面。本次作业的要求也主要集中在实现一个UI,C#实现图形界面较为容易,所以最终我们决定用C#来实现本次作业。2.具体思路 第三次作业乍一看好像和第二次差不多,但是经过仔细分析之... 阅读全文
posted @ 2013-10-21 09:57 wwtbuaa 阅读(160) 评论(0) 推荐(0) 编辑
  2013年10月1日
摘要: 先上代码import sysdef maxsum_h(num,y1,x1): temp=[0]*x1 s=0 a=-1000000 for q in range(y1): for i in range(y1): for j in range(i,y1): for k in range(x1): temp[k]+=int(num[(j+q)%y1][k]) if(s+temp[k]=min_x and x+i[0]=min_y an... 阅读全文
posted @ 2013-10-01 01:54 wwtbuaa 阅读(134) 评论(1) 推荐(0) 编辑