wly603

2012年5月26日

C++函数名字的隐藏:重写、重载、重定义

摘要: 概要: C++中经常出现函数名字一样,但参数列表或返回值不同的函数,要搞清楚函数的正确调用关系,需理清三个概念:重写(override)、重载(overload)、重定义(redefine)。一、三个基本概念 1、重定义(redefine):派生类对基类的成员函数重新定义,即派生类定义了某个函数,该函数的名字与基类中的函数名字一样。 特点:(1)不在同一个作用域(分别位于基类、派生类) (2)函数的名字必须相同 (3)对函数的返回值、形参列表无要求 特殊情况:若派生类定义的该函数与基类的成员函数完全一样(返回值、形参列表均相同),且基类的该函数为virtual,则属于... 阅读全文

posted @ 2012-05-26 12:32 wly603 阅读(3723) 评论(3) 推荐(1) 编辑

2012年5月23日

C、C++、java中函数的参数:传值 or 传引用

摘要: 概要: 教C语言课的过程中,发现很多学生对函数调用中的参数传递问题很容易糊涂。跟师弟交流的过程中,也发现大家对这个问题理解不够透彻。因此,结合本人自己的理解,将函数调用中的传值与传引用进行分析总结。一、函数调用中传递参数的类型 传值(pass by value):即形参接收实参传递过来的值,如果是自定义类型,要调用拷贝构造函数。函数处理的是形参的值。 传引用(pass by reference):引用表示与原对象完全相同,是同一个对象。若函数的形参是引用,则实参与形参间不存在参数传递,且函数内对形参的修改就是修改实参,因为它们是引用关系,是同一个对象。 1、C语言中,传递的参数类型只... 阅读全文

posted @ 2012-05-23 15:32 wly603 阅读(3433) 评论(5) 推荐(1) 编辑

2012年5月19日

C++中多态性、类成员的访问问题

摘要: 概要: C++的多态性是通过关键字virtual指定的, 而Java中,动态绑定是默认的处理方式,java中不需要将方法声明为虚方法。 因此,在C++中要结合类成员的访问控制符、virtual关键字,来分析调用的是哪个成员函数,是否发生多态。一、规则总结 1、对象只能访问类的public成员,对象只能访问本类声明的public成员和public函数 2、派生类可以访问父类的public、protected成员 3、有继承时,public继承,继承后父类成员的属性不变 protected继承,继承后父类public成员变为protected priva... 阅读全文

posted @ 2012-05-19 13:50 wly603 阅读(1703) 评论(3) 推荐(1) 编辑

2012年5月15日

C++多个构造函数的问题

摘要: 概要: 在C++中,每一个类都会有一个或多个构造函数,一个析构函数,一个赋值函数。 构造函数,包括:无参构造、有参构造、拷贝构造 本文主要是理解各构造函数的调用问题,即定义一个对象后,调用的是哪个构造函数。一、知识总结当我们定义一个空类时,编译器默认会产生4个成员函数:默认无参构造函数、拷贝构造函数、赋值函数、析构函数。其中默认的拷贝构造函数是浅拷贝。如果我们在类中声明了构造函数,那么系统不再提供默认构造函数,此时如果还需要无参构造函数,则需要自己重载构造函数。调用时,把握一点: 1、定义一个新对象时,一定会有个构造函数被调用。根据定义时所赋的初始值来决定该调用哪个构造函数。初始化时... 阅读全文

posted @ 2012-05-15 14:25 wly603 阅读(5662) 评论(0) 推荐(0) 编辑

2012年5月8日

查找方法--从静态表到动态表

摘要: 概要: 数据结构学习的笔记:查找的一些方法。各种方法的具体描述和特点,烦请参考数据结构的课本,或直接google 针对数据存储结构的不一样,查表方法分为: 静态表:顺序,折半,分块查找 动态表:二叉排序树、平衡二叉树一、具体方法介绍 1、针对静态表 (法1)顺序查找:适合于存储结构为顺序存储或链接存储的线性表。 顺序查找/* 顺序查找 适合于存储结构为顺序存储或链接存储的线性表。 查找关键字为key 的记录 输入:待查数组 s[0]----s[n-1],共n个数 输出:成功,返回序号 失败,返回-1*/i... 阅读全文

posted @ 2012-05-08 12:22 wly603 阅读(531) 评论(0) 推荐(0) 编辑

各种排序算法的总结

摘要: 概要: 这是本人以前学习数据结构时,写的一些排序算法。今天整理一下,方便以后查阅。 本文实现的排序算法包括:直接插入排序、折半插入排序、2路插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、堆排序、归并排序一、具体实现 关于各算法的特点和思想原理,本文不作介绍,需要了解的,可查阅数据结构书籍,或直接google 直接插入排序//直接插入排序:参数:待排序数据,数据个数void InsertSort( int nData[], int nNum){ int temp= 0; //哨兵 int i,j; for (i = 1;i<nNum;i++) { ... 阅读全文

posted @ 2012-05-08 09:20 wly603 阅读(340) 评论(0) 推荐(0) 编辑

2012年4月29日

Hadoop中wordcount源码分析

摘要: 0、前言 本文是学习hadoop后的笔记总结,由于对hadoop了解不深,正处于摸索阶段,所以分析不够透测。本文是记录我的学习过程和学习总结。环境:ubuntu 8.04.4 hadoop1.0.2(hadoop的版本不同,API略有变化)参考书籍: 《 Hadoop权威指南(中文版)》 清华出版社 《实战Hadoop--开启通向运计算的捷径》 刘鹏主编1、Hadoop版的helloworld源码(即wordcount) 源码来自于 /usr/local/hadoop-1.0.2/src/examples/org/apache/hadoop/examples/WordCount.java... 阅读全文

posted @ 2012-04-29 14:42 wly603 阅读(5965) 评论(0) 推荐(1) 编辑

2012年4月20日

Hadoop中datanode无法启动

摘要: 摘要:该文档解决了多次格式化文件系统后,datanode无法启动的问题一、问题描述 当我多次格式化文件系统时,如 root@localhost:/usr/local/hadoop-1.0.2# bin/hadoop namenode -format 会出现datanode无法启动,查看日志,发现错误为: 2012-04-20 20:39:46,501 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceIDs in /home/gqy/hado... 阅读全文

posted @ 2012-04-20 21:03 wly603 阅读(8951) 评论(0) 推荐(1) 编辑

2012年4月19日

基于eclipse的hadoop开发-----HDFS API学习

摘要: 环境:ubuntu8.04.4 hadoop1.0.2 eclipse3.7.2概要:本文主要是记录HDFS中常用API的使用,如文件上传、创建文件、重命名、删除、读取文件内容等。一、实验步骤1、启动Hadoop,切换到超级用户 gqy@localhost:/usr/local/hadoop-1.0.2$ su root@localhost:/usr/local/hadoop-1.0.2# bin/hadoop namenode -format root@localhost:/usr/local/hadoop-1.0.2# bin/start-all.sh 2、打开Eclipse,新建一个.. 阅读全文

posted @ 2012-04-19 16:21 wly603 阅读(2341) 评论(0) 推荐(0) 编辑

2012年4月18日

基于Eclipse的Hadoop应用开发环境配置

摘要: 概要:在eclipse环境下配置Hadoop的开发环境环境: ubuntu8.04.4 eclipse:Release 3.7.2 Hadoop:hadoop-1.0.2参考前辈资料: http://www.cnblogs.com/flyoung2008/archive/2011/12/09/2281400.html一、配置过程 1、先启动hadoop守护进程 root@localhost:/usr/local/hadoop-1.0.2# bin/hadoop namenode -format root@localhost:/usr/local/hadoop-1.0.2# bin/start- 阅读全文

posted @ 2012-04-18 10:42 wly603 阅读(2121) 评论(1) 推荐(1) 编辑

导航