$(filter-out PATTERN...,TEXT) 函数名称:反过滤函数 filter-out 函数功能:和 filter 函数实现的功能相反。过滤掉字串“TEXT”中所有符合模式“PATTERN”的单词,保留所有不符合此模式的单词。可以有多个模式。存在多个模式时,模式表达式之间使用空格分割
在Android.mk中打印输出信息的方法是: $(info string) $(warning string) $(error string) 输出变量方式为:$(info $(var)) LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS)
示例: LOCAL_LDLIBS := -llog -lz android-3 C库 C库包含多线程支持,所以不需要指定 -lpthread,也不需要指定 -lrt 注意:内核头文件还没有稳定下来(今后可能变动),这些头文件是 <linux/*.h> 和 <asm/*.h&g
Windows平台BUG:armeabi等平台经常报 error: unable to rename temporary Permission denied 错误 android-ndk-r17b只支持:arm64-v8a/armeabi-v7a/x86/x86_64 建议平台:Linux 建议版本
Android SDK Android SDK 官方主页:https://developer.android.com/studio/index.html # wget https://dl.google.com/android/repository/sdk-tools-linux-3859397.
Android NDK 安装 # wget https://dl.google.com/android/repository/android-ndk-r10e-linux-x86_64.zip # wget https://dl.google.com/android/repository/andro
临时配置 $ export PATH=$PATH:/data/ndk/android-ndk-r16b 当前用户配置 $ vim ~/.bashrc export ANDROID_NDK_HOME=/data/ndk/android-ndk-r16b export PATH=$PATH:$AND
C++类型转换 C++类型转换 static_cast 普遍情况 const_cast 去常量 dynamic_cast 子类类型转为父类类型 reinterpret_cast 函数指针转型,不具备移植性 static_cast 普遍情况 #include <iostream>
C++异常处理 //C++ 异常处理,根据抛出的异常数据类型,进入到相应的catch块中 void main() { try { int age = 300; if (age > 200) { throw 9.8;
继承 #include <iostream> //代码的重用性 using namespace std; //人类 class Human { public: void say() { cout << "说话" <<
类大小 //类的大小 class A { public: int i; int j; int k; static int m; }; class B { public: int i; int j; int k; void print
构造函数属性初始化 //构造函数的属性初始化列表 class Teacher { private: char* name; public: Teacher(char* name) { this->name = name; cout <&l
函数 函数默认参数 //函数默认参数 void print(int x, int y = 6, int z = 8) { cout << x << endl; } //重载 void print(int x, bool ret) { cout <&l
C与C++的关系 1.C++可以与C代码进行混编 2.C++面向对象编程语言、C面向过程的编程 3.C++对C的一个增强 命名空间 #include <stdlib.h> #include <iostream> //标准命名空间(包含很多标准的定义) using na
GetStringUTFChars注意事项 jboolean isCopy = NULL //函数内部复制,isCopy为JNI_TURE,没有复制为JNI_FALSE,不是外部参数所能控制的 char *c_str = (*env)->GetStringUTFChars(env, jstr,