- 浏览: 231402 次
最新评论
-
naouguhtaeyeti:
当台阶数大时,这个用递归效率太低
【100题】第二十七 跳台阶问题
文章列表
一,库:一种可执行代码的二进制形式,可以被载入内存执行。其中库分为静态库、动态库
二,静态库和动态库的区别
1)Linux 下静态库:名字一般为 lib***.a利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译。
2)Linux 下动态库:这类库的名字一般是libxxx.so;相对于静态函数库,动态函数库在编译的时候 并没有被编译进目标代码中,你的程序执行到相关函数时才调用该函 ...
- 2012-03-20 17:48
- 浏览 751
- 评论(0)
一,类继承
定义:从已有的类派生出新的类,而派生类继承了原有类的特征,包括方法。
目标:提供可重用的代码
二,一个简单的基类
#include <iostream>
#include <cstring>
using namespace std;
class student //基类
{
private:
char name[20];
int num;
int age;
public:
student(const char *m_name,const int m_num,const int m_age);
~student();
virtual ...
- 2012-03-20 12:58
- 浏览 845
- 评论(0)
一,开发环境配置
众所周知,万事开头难,配置开发环境是所有开发项目最基本且必须要做的一步。
所用的所有软件及开发平台:Win7+NetBeans+Vmware+ubuntu+NDK+android SDK
首先,在Win7平台下面配置好开发android的环境,具体细节参照博客:http://blog.csdn.net/tianshuai11/article/details/7367700
然后,在Vmware中的ubuntu系统中下载android-ndk-r7b的NDK开发包http://developer.android.com/sdk/ndk/in ...
- 2012-03-19 17:40
- 浏览 1032
- 评论(0)
【序】我是为了android研究需要才开始研究JNI的。阅读本例文之前希望你按照上一篇【java】Windows7
下环境变量设置已经对环境变量进行正确设置
本文通过一个简单的例子来演示如何使用JNI。我们写一个JAVA程序,并用它调用一个C函数来打印“Hello World!”。
这个过程包含下面几步:
1、 创建一个类(HelloWorld.java)声明本地方法。
2、 使用javac编译源文件HollowWorld.java,产生HelloWorld.class。使用javah –jni来生成C头文件(HelloWorld.h),这个头文件里面包含了本地方法的函数 ...
- 2012-03-19 11:19
- 浏览 615
- 评论(0)
Windows 7下配置JDK环境变量参数设置:
1.安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为:D:\Program Files (x86)\Java\jdk1.6.0_25
2.安装完成后,右击“我的电脑”,点击“属性”,单击“高级系统设置”,点击“环境变量”,如图:
4.在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”:
(1).JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\Program Files (x86)\Java\jdk ...
- 2012-03-19 10:24
- 浏览 699
- 评论(0)
一,序言:这是我继java、VC++、C、C#……之后又入手的一门语言。
二,认识python
1,简介:python是一种面向对象、直译式计算机程序设计语言,具有丰富和强大的类库。它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结在一起。
2,历史:做为ABC 语言的一种继承,后缀名为.py
3,局限性:强制缩进:缩进表示同一个语法块
单行语句和命令行输出问题
4,开发环境:python 3.0 语法区别于 python 2.0
三,走进python
1)入门神级的程 ...
- 2012-03-18 00:36
- 浏览 565
- 评论(0)
安装调试
一,安装netbeans 7.0.1 J+JDK 6+android jdk+NBAndroid插件
二,遇到的麻烦及各个解决
1 安装netbeans之前要先安装JDK6 然后配置好 环境变量
{控制面板->系统和安全->系统->高级系统设置->环境变量; 在系统变量里添加
JAVA_HOME D:\Program Files (x86)\Java\jdk1.6.0_25
Path D:\Program Files(x86)\Java\jdk1.6.0_25\bin}
2 安装android jdk的各种蛋疼
首先要从国外网站更新 要能 ...
- 2012-03-14 22:34
- 浏览 886
- 评论(0)
一,概念
1)静态存储方式:指在程序运行期间分配固定的存储空间的方式。外部变量和静态变量属于此种存储方式
2)静态成员变量:为该类的所有实例所共享,也就是说当某个类的实例修改了该静态成员变量,其修改值为该类的其它所有实例所见。无论创建多少对象,程序都只创建一个静态变量副本。
3)静态成员特点:静态成员存在于内存,非静态成员需要实例化才会分配内存,所以静态成员不能访问非静态的成员..因为静态成员存在于内存,所以非静态成员可以直接访问类中静态的成员。
4)不能在类声明中初始化静态成员变量,因为声明描述了如何分配内存,但并不分配内存。
5)delete ...
- 2012-03-14 15:17
- 浏览 686
- 评论(0)
一,比较网络
1)组成:线路和比较器
2)比较网络含义:就是一个由线路互相联接着的比较器的集合,我们把具有n个输入的比较网络画成一个由n条水平线组成的图,比较器则垂直地与两条水平线相连接。每个比 ...
- 2012-03-14 00:12
- 浏览 687
- 评论(0)
一,操作符重载
1)函数重载(多态)
名称相同,特征标(参数列表)不同的函数。完成相同的基本操作
2)操作符左侧的对像是调用对象,操作符右侧的作为参数被传递的对象
3)重载限制:1>重载后的操作符至少有一个操作数是用户定义的类型。防止用户为标准类型重载操作符
2>使用操作符,不能违反操作符原来的句法规则。
3>不能修改操作符优先级,不能定义新的操作符
4>可被重载的操作符:
+ - * / %
...
- 2012-03-12 17:06
- 浏览 741
- 评论(0)
一,概念
1)流网络:简单有向图,且有两个特别的顶点(源点s,汇点t)
2)流的边标识为f(u,v)/c(u,v),流量/容量
3)流的三个性质:1>容量限制 对于所有边 流量<容量
2>反对称性 f(u,v)=-f(v,u)
...
- 2012-03-09 19:50
- 浏览 707
- 评论(0)
一,过程性编程和面向对象编程
1)采用过程性编程方法,首先考虑要遵循的步骤,然后考虑如何表示这些数据。
2) 采用面向对象编程,首先从用户角度考虑对象,描述对象所需要的数据,以及描述用户与数据交互所需要的操作。完成对接口的描述后,需要确定如何实现接口和数据存储,最后使用心得设计方案创建出程序。
二,抽象和类
1)类:将抽象转换为用户定义类型的C++工具,将数据表示和操纵数据的方法组合成一个整洁的包。
2)类包括:类声明:数据成员的方式描述数据部分,成员函数的方式描述公有接口
类方法定义:描述如何实现类成员函数
3)数据隐藏:将数据放在类的 ...
- 2012-03-07 23:40
- 浏览 643
- 评论(0)
一,单独编译
1)请不要将函数定义或变量声明放到头文件中。
原因:一个头文件中包含一个函数定义,然后其他两个文件(同属于一个程序)包含该头文件,则同一个程序中将包含同一个函数定义。除非函数是内联的(inline),否则将出错。
2)将结构放在头文件中是可以的。因为它们不创建变量。
3)头文件写法: “main.h” 头文件包含在双引号中则编译器首先查找当前的工作目录。
<main.h>包含在尖括号中则在存储标准头文件爱你的主机系统的文件系统中查找
4)源码文件:**.c 不需要#includ ...
- 2012-03-06 00:08
- 浏览 794
- 评论(0)
一,示例
四个文件:main.c;main.h;t_print.c;t_print.h
makefile:写法1)
main:main.o t_print.o
gcc main.o t_print.o -o main
main.o:main.c main.h
gcc -c main.c
t_print.o:t_print.c t_print.h
gcc -c t_print.c
clean:
rm main.o t_print.o 执行:make 或 make main
删除中间文件: make clean
写法2) ...
- 2012-03-04 00:14
- 浏览 753
- 评论(0)
一,C++内联函数
定义: inline double square (double x){return x*x;}//含有关键字inline的内联函数
描述:内联函数类似于宏的定义与调用
使用:调用内联函数时候,不用跳到另一个位置执行代码,而是将调用内联函数代码用相应内联函数替换。
区别:普通函数调用时候,跳到函数处执行完,返回再执行下一条语句。
内联函数调用时候,直接将代码复制过来执行,省去了跳过去然后返回的过程
宏:只是简单的形式上的替换
例:#define square(x) ...
- 2012-02-29 20:15
- 浏览 709
- 评论(0)