- 浏览: 636563 次
- 性别:
- 来自: 苏州
最新评论
-
laj12347:
楼主太给力了
Eclipse设置、调优、使用 -
kunlyy:
楼主太给力了
Eclipse设置、调优、使用 -
knight_black_bob:
mark ~
Eclipse设置、调优、使用 -
hujunxiang:
好全好全~~~
Eclipse设置、调优、使用 -
bugyun:
楼主辛苦了
Eclipse设置、调优、使用
文章列表
命名空间namespace, 和java中的包的功能相同, 用来避免命名冲突的(如: com.test.User和com.demo.User这两个不会冲突).
c++标准库的所有内容都放在了std命名空间下, 就是standard的缩写, 比如要使用标准库的string类的话, 必须先导入命名空间, using namepsace std;(这个和java中的import java.lang.String是一样的).
比如上面说的, 假如现在有两个User类, java中通过包来避免他们的冲突, c++就通过命名空间来避免他们冲突.
User.h
namespace test
{ ...
#include<>:通常用于包含标准库或系统提供的头文件,会使编译器到保存系统标准头文件的位置查找头文件。
如:#include <iostream> 编译器仅在设置的头文件查找路径中查找该头文件。
#include"":通常用于包含程序员自己的头文件。用这种格式时,编译器会先查找当前目录是否有指定名称的头文件,然后在从标准头文件目录中去查找。
如:#include "my_header.h" 编译器会现在当前目录查找该头文件,再去设置的头文件查找路径查找该头文件。
c常用标准库头文件: http://www.360do ...
jni的编写和编译需要有以下这些东西:
1. javah.exe:为java中的native函数生成头文件
2. jni的头文件:实现native函数时要使用jni.h中的东西,我这边是在:
c:\Java\jdk1.6.0_25\include;
c:\Java\jdk1.6.0_25\include\win32
3. c的头文件:使用c的标准库必须要用到,我这边是在:
D:\Program\mingw\include;
4. c++的头文件:使用c++的标准库必须要用到,我这边是在:
D:\Program\mingw\lib\gcc\mingw32\4.8.1\include\c++ ...
要开发jni,需要用到javah工具来生成native方法的头文件,网上很多教程都是在命令行下手动输了来生成的,这边通过eclipse提供的External Tools来将javah添加到eclipse的快捷菜单上,这样就只要点一下eclipse的按钮就可以快速的生成native方法的头文件了。
1.
2.
3.
4.
5.
6. 如果这一步中没有GBK编码可以选,那可以先将某个.java文件设为GBK的,然后在回到这里,就会发现有GBK可选了,选中GBK后,再将那个.java文件设回原来的编码。(具体看最后一张图)
7.如果6中没有GBK可选,可以先将Main.ja ...
在windows上开发jni,有两种选择cygwin或者MinGW,但用cygwin开发jni貌似有一些莫名其妙的问题,网上找了好久也没解决办法,只是说换MinGW没问题。
不过用cygwin开发local c++程序是没有问题的。
参考:
http://aofengblog.blog.163.com/blog/static/6317021201011972451154/
http://915269970.blog.51cto.com/4907983/845704
1. 下载MinGW(Minimalist GNU for Windows)
这个版本的MinGW安装器比较简单好用htt ...
安装adt的时候不管时在线安装还是下载下来了离线安装,都不见安装进度条动,只要把一个选项勾掉立马就让进度条一下到顶。
wgs84: gps获取出来的坐标就是wgs84标准的,但在国内不允许在互联网上直接使用这种坐标(应该是出于某些安全问题),所以就有了加密后的坐标baidu09.
“国际经纬度坐标标准为WGS-84,国内必须至少使用国测局制定的GCJ-02,对地理位置 ...
hiero是一个java小程序,能够帮助用户自定义.fnt字体。其中包括填充、轮廓、阴影等效果。
第一步:打开连接 http://www.n4te.com/hiero/hiero.jnlp
第二步:你会看到一个应用程序
第三步:在system里选择你的字体,在sample text 框内输入你的字库内容、在effects里选择你要更改的样式
第四步:选择glyph cache,可以调节所生成png的尺寸以及页数。在page width 和page ehight里面选择要生成图片的宽和高,view里面会根据你写入的宽和高来生成对应的图片数目。调节完成后点击reset cache。
第五步:单 ...
nio中主要是要学会Buffer和Channel的使用.
Buffer从它的名字就可以知道它表示的是一个缓冲. Buffer是一个抽象类, 它主要封装了与缓冲有关的一些抽象方法. 主要的方法有这几个:
int capacity() 这块缓冲的容量.
Buffer clear() 清空缓冲.
Buffer flip() 清算缓冲的实际使用大小(字节).
int limit() 缓冲实际使用了多少字节.
Buffer position(int newPosition) 将读取位置移动到指定的位置.
int position()
当前的读取位置, 以字节为单位, 每读取一个byte就会向 ...
一个很实用的单位转换工具类(使用了策略枚举的模式, 这个专业名词找了我好久, 一时忘记了 ):
/***
* 存储大小(单位)转换器.
*/
public enum SizeConverter {
/** 转换任意单位的大小, 返回结果会包含两位小数但不包含单位. */
Arbitrary {
@Override
public String convert(float size) {
while (size > 1024) {
size /= 1024;
...
关闭流:
public static void closeSilently(Closeable closeable) {
if (closeable != null) {
try {
closeable.close();
} catch (IOException ex) {
}
}
}
普通io方式的拷贝:
/***
* <p> 使用字节流进行拷贝. 拷贝完成后不会关闭流, 流的位置将保持在最后一次读取和写入的位置. </p>
*/
public ...
在遍历List时删除元素可能会遇到ConcurrentModificationException,下面是两种可行的解决办法:
for (int i = list.size()-1; i >= 0; i--) {
if (满足删除条件) {
list.remove(i);
}
}
Iterator<String> itr = list.iterator();
while(itr.hasNext()) {
String value = itr.next();
if(满足删除条件) {
...
常用 Java 静态代码分析工具的分析与比较
http://blog.csdn.net/wtfpewfn/article/details/7336056
emma的coverage report代码文件乱码的问题
http://blog.csdn.net/dawnming/article/details/7943589
重新打包的emma.jar: http://dl.iteye.com/topics/download/de2b3f89-ecc2-3cea-a25c-6ad93f18bd5d
proguard的常见配置参数
-include {filename} 从给定的文件中读取配置参数
-basedirectory {directoryname} 指定基础目录为以后相对的档案名称
-injars {class_path} 指定要处理的应用程序jar,war,ear和目录
-outjars {class_path} 指定处理完后要输出的jar,war,ear和目录的名称
-libraryjars {classpath} 指定所引用的库文件(指定为库文件的不会被处理)
-dontskipnonpubliclibraryclasses ...
Solution 1 :
BASE64Decoder
这个没有java doc,属于jdk里不推荐使用的工具类
解决方案:
使用apache common中的Base64替换
你可以在这里下载Apache commons codec:
http://commons.apache.org/codec/
替换一下就可以了
强烈建议不要用sun.misc,是不安全的 ,最好不要使用
Solution 2:
1. Open project properties.
2. Select Java Build Path node.
3. Select Libraries tab.
...