![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
qhs1573
这个作者很懒,什么都没留下…
展开
-
qss font-family常用的黑体宋体等字体中英文对照
微软雅黑: Microsoft YaHei宋体:SimSun黑体:SimHei仿宋: FangSong楷体: KaiTi隶书:LiSu幼圆:YouYuan华文细黑:STXihei华文楷体:STKaiti华文宋体:STSong华文中宋:STZhongsong华文仿宋:STFangsong方正舒体:FZShuTi方正姚体:FZYaoti华文彩云:STCaiyun华文琥珀:STHupo华文隶书:STLiti华文行楷:STXingkai华文新魏:STXinwei...原创 2022-05-09 17:53:35 · 6124 阅读 · 0 评论 -
JNI JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8:xxxx异常
今天android上Jni返回jstring给java层,概率性的出现上述异常,网上看过解决方案,说修改jvm的什么代码,其实我们做应用层的哪有改这个的能力根本不现实的,后面继续查找最后自己解决的。连接如下:JNI DETECTED ERROR IN APPLICATION: input is not valid Modified UTF-8: illegal start byte 0xfe - a318013800 - 博客园JNI DETECTED ERROR IN APPLICATION: inp翻译 2022-04-13 12:07:14 · 1130 阅读 · 0 评论 -
QT环境下集成Python出现PyType_Slot *slots;冲突问题解决方法
typedef struct{ const char* name; int basicsize; int itemsize; unsigned int flags; #undef slots //这里取消slots宏定义 PyType_Slot *slots; /* terminated by slot==0. */ #define slots Q_SLOT.原创 2021-11-25 19:49:07 · 3600 阅读 · 4 评论 -
ZIP.lib zip.dll 源代码编译方法
详情请查看:zlib库的编译及使用 - 雪域蓝心 - 博客园* 打开网址http://zlib.net/下载zlib源码, * 解压压缩包,进入目录:C:\Users\Administrator\Desktop\zlib-1.2.11\zlib-1https://www.cnblogs.com/20170722-kong/p/10744862.html...转载 2021-11-25 10:29:58 · 299 阅读 · 0 评论 -
基于C++的模板引擎
模板引擎(Template engine)是实现模型和视图分离的一个重要手段。如果你从未接触过模板引擎可以看看Wiki的介绍。模板引擎的流行最初是因为网站开发的需要,象比较重要的几个模板引擎:SMARTY、Velocity、StringTemplate都是来源于网页设计的。当然,除了网页设计,模板引擎还可以应用于其他领域,而我主要将其应用与代码生成器的设计中。有关模板引擎,我推荐StringTemplate的作者Terence Parr写的一篇英文论文。Terence Parr是一个大学教授,写的文章自.转载 2021-11-08 13:53:09 · 843 阅读 · 0 评论 -
QT获取时间戳毫秒和秒的方法
获取时间戳毫秒:QDateTime::currentDateTime().toTime_t() * 1000;获取时间戳秒:QDateTime::currentDateTime().toTime_t();原创 2021-09-04 10:15:02 · 8955 阅读 · 0 评论 -
windows下用NDK编译libiconv-1.16(有源码提供可直接编译)
今天开发中碰到一个需求就是编码集转换,android下搜索了一把大家都说用iconv转换编码然后我又去JNI下看了下有没有这个头文件然后搜索发现是有但是android 28的版本才能用,做App都知道要兼容6.0的版本然后只能再次搜索 返现iconv这个是个开源库,然后找到源码也顺利下载下来了,网上教程很多我也是看着教程编译的 天下文章一大抄根本没有例子或编译成功.so提供出来只说步骤,C++或C的编译大家都懂得一个问题解决半天一天的,还有就是很多人提供的是Linux下的编译,他妈的我想说我们在window原创 2020-09-23 10:27:32 · 763 阅读 · 6 评论 -
C++类单一继承学习笔记
在C++中声明单一继承的一般形式如下:class 派生类名:访问控制 基类名{ private: 成员声明列表 protected: 成员声明列表 public: 成员声明列表};基类和派生类的关系如下原创 2013-11-03 15:49:52 · 1221 阅读 · 0 评论 -
C++类的保护成员学习笔记
派生类从基类公有继承时,派生类的成员函数可以直接访问基类的公有成员,但不能访问基类的私有成员。因此,为了便于派生类的访问,可以将基类的私有成员中需要提供给派生类访问的成员定义为保护成员,说白了就一句话,派生类可以访问protected权限的成员但是派生类的对象不能访问基类的成员。下面是一个实例:#include /* run this program using the conso原创 2013-11-03 21:34:16 · 5480 阅读 · 0 评论 -
C++函数的基本知识
使用C++函数必须完成如下工作:1、提供函数的定义2、提供函数的原型3、调用函数下面是一个函数调用的过程#include using namespace std;void simple();int main(){ cout<<"调用simple()函数开始"<<endl; simple(); cout <<"调用simple()函数结束"<<endl; ret原创 2015-02-05 15:13:09 · 534 阅读 · 0 评论 -
C++简单的应用方程类极其成员函数
学了很多了没有一个可以连起来的例子下面设计一个简单的一元二次方程的函数,以ax²+bx+c=0 的1、设计方程类2、设计成员函数(1)设计构造函数FindRoot::FindRoot(float x,float y,float z){ a=x; b=y; c=z; d=b*b-4*a*c;}(2)设计成员函数函数Find可以根据d大于、等于或小于原创 2013-11-03 12:31:09 · 1215 阅读 · 0 评论 -
C++数组和类
C++中类的引用产生了新的数组类型,对象数组和对象指针数组下面已经定义的Point类定义的一般类的对象、数组对象、对象指针数组的实例。Point p1,p2[10];Point *p3[5];其中p1是一个普通对象、p2是一个对象数组,它有10个元素每个元素都是一个Point类的对象,p3[5]是一个对象指针数组。访问对象的公有有成员函数的不同方式的例子:#include原创 2013-11-03 11:32:09 · 1802 阅读 · 1 评论 -
C++常成员函数学习笔记
1、定义常成员函数:用关键字const说明的成员函数称为常成员函数。声明常成员函数时const 放在函数参数列表之后其格式如下:类型标识符 函数名 (参数列表) constconst是函数类型的一个组成部分,因此在定义函数时必须重申const声明,定义格式如下 类型标识符 类名:: 函数名(参数列表) const {//函数体}下面是一个例子:常对象调用常成原创 2013-11-03 09:39:16 · 994 阅读 · 0 评论 -
C++常引用作为函数的参数学习笔记
1.常对象定义:使用const关键字修饰的对象称为常对象定义格式 类名 const 对象名称(参数列表)#include /* run this program using the console pauser or add your own getch, system("pause") or input loop */using namespace std;class A{ pr原创 2013-11-03 01:59:12 · 1753 阅读 · 0 评论 -
C++中(const)常数据成员初始化
在类中使用const关键字可以修饰数据成员和成员函数或对象,分别称为数据成员、常成员函数和常对象。1常量成员常量成员包括常数据成员、静态常数成员和常引用。常数据成员和常引用的初始化只能通过构造函数的成员初始化列表显示进行,而静态常数据成员仍保留静态成员的特征,在类外初始化。例子:常数据成员初始化#include /* run this program using the c原创 2013-11-03 01:42:04 · 7508 阅读 · 2 评论 -
友元函数的的使用学习笔记二
C++控制对类的私有部分的访问、通常公有类的方法提供唯一的途径,但是有些时候这种限制太严格,以至于不适合特定的编程问题,在这种情况下C++提供了另外一种形式的访问权限,友元。原创 2013-10-24 23:52:44 · 629 阅读 · 0 评论 -
C++的结构块中成员函数的使用
C++允许在结构中定义函数,该函数称为成员函数。其描述形式如下:struct 结构名{数据成员成员函数}下面是一个使用成员函数的例子#include /* run this program using the console pauser or add your own getch, system("pause") or input loop */using n原创 2013-09-20 22:43:19 · 1612 阅读 · 0 评论 -
C++ string类的简介
IOS/ANSI C++98 标准通过添加string类扩展C++库因此现在可以string类型的变量而不是字符串数组来存储字符串,string类看起来很简单同时提供了字符串作为一种数据类型的表示方法。下面请看一个小例子说明string对象和字符串数组之间的一些相同点和不同点#include #include using namespace std;int main(){ cha原创 2015-01-31 23:35:38 · 616 阅读 · 0 评论 -
C++接受键盘输入字符串
C++学习字符串输入的小例子,并且做了一些字符串是否为空,字符数组转换为字符串的一些操作。下面是例子:在DEV C++的编译工具下面顺利通过编译#include #include using namespace std; int main(){ int count = 20; char name[count]; char password[count]; boo原创 2015-01-31 18:34:45 · 9063 阅读 · 0 评论 -
C++中函数的返回值作为函数的参数学习笔记
函数的返回值作为函数的参数使用:#include int test(int x,int y);/* run this program using the console pauser or add your own getch, system("pause") or input loop */using namespace std;int main(int argc, ch原创 2013-10-03 21:02:30 · 1427 阅读 · 0 评论 -
C++ 引用
引用很容易与指针混淆,它们之间有三个主要的不同:不存在空引用。引用必须连接到一块合法的内存。 一旦引用被初始化为一个对象,就不能被指向到另一个对象。指针可以在任何时候指向到另一个对象。 引用必须在创建时被初始化。指针可以在任何时间被初始化。今天在网上看到有人对C++引用总结的三句话,一直都无法理解第二条,然后请教了同事 同事给我解释了终于明白了,这里记录下免得以后忘记,同时也是给不理解的...原创 2019-03-13 14:23:36 · 155 阅读 · 0 评论 -
jni中的NewStringUTF这个函数调用后需要释放内存吗?
今天开发中遇到一个需求:java调用.so或dll动态库里的方法后需要返回一个字符串给java使用,如以下方式:JNIEXPORT jstring JNICALL Java_com_ygc_demo_jni_ApiNative_fromCharToJString(JNIEnv *, jclass);请注意了这里返回的是一个jstring,那我们怎么返回这个java想要的string呢?这...原创 2019-02-19 13:59:44 · 9250 阅读 · 0 评论 -
JNI将jstring转换成char* string
Android开发NDK或C++和Java交互是经常用到jstring转换成C++想要的string或char*以下例子和使用方法。#define FUNC_CPY_JSTRING(name,len,jstr) \ char name[len+1] = {0}; \ if(jstr != NULL)\ { \ const char* __tmp_dn__ = env->Ge...原创 2019-02-18 15:50:24 · 2769 阅读 · 0 评论 -
C++ int转换成string的方法
int转string也是经常用到的,今天碰到了整理下,写了一个简单的宏。 #include <sstream>#define INT_TO_STRING(name,value)\int _i##name = value;\stringstream ss##name;\ss##name<<_i##name;\string name = ss##name.s...原创 2019-02-22 17:41:30 · 2495 阅读 · 0 评论 -
C++ time_t转换成java想要的long 型时间戳(毫秒数)
java里获取当前时间戳超级方便,System.currentTimeMillis();一行代码搞定,C++怎么获取呢?看下面:#include <ctime>JNIEXPORT jlong JNICALL Java_com_ygc_demo_jni_ApiNative_timeTest (JNIEnv *env, jclass jc){ time_t now = tim...原创 2019-02-22 16:10:51 · 2897 阅读 · 0 评论 -
C++函数的模板
#include using namespace std;template void Swap(T &a,T &b);int main(){ int i=10; int j=20; cout <<"i,j="<<i<<","<<j<<endl; cout <<"Using compiler-generated int swapper:\n"; Swap(i,j); co原创 2015-03-10 14:21:17 · 546 阅读 · 0 评论 -
C++使用new创建动态结构
动态创建结构说白了就是内存分配不是在编译的时候分配的而是运行的时候分配内存的,也就是new的时候分配的请看下面的例子就明白了。#include using namespace std;struct inflatable{ char name[20]; float volume; double price; };/** * 调用结构成用时用成员运算符 ps->price *也可以原创 2015-02-05 11:22:46 · 867 阅读 · 0 评论 -
C++在类中定义静态数据成员
#include /* run this program using the console pauser or add your own getch, system("pause") or input loop */using namespace std;class Point{ private: int X,Y,Z; static int count; public:原创 2013-10-19 23:25:21 · 1240 阅读 · 0 评论 -
C++中Const 修饰指针就近原则
转载地址:http://www.myexception.cn/cpp/1070329.htmlC和C++中Const 修饰指针个人诀窍--就近原则C、C++中Const修饰指针时总是记不住到底作用的是指针还是指针指向的变量内容:最近总结了一个绝招,可以绝对理清楚!那就是“就近原则”所谓就近原则,意思就是const靠哪个近,就作用在那个上面!比如:const靠int类型关键字转载 2013-10-20 00:09:52 · 1836 阅读 · 0 评论 -
C++学习笔记1C++开发环境搭建创建第一个项目Hello word!
话说不会C语言或C++的程序员不叫程序员,最近公司一直很闲,闲的快发霉了就想了解下C++看看能否坚持下去,不管结果怎么样先把学习的笔记给记录下来如果以后真的开发C++有可能会有一点点的帮助,旁边也没有C++的高手也不知道平时工作中开发的工具是什么我是新手刚开始学习就随便下载了个DevC++这个工具,买了一本很出名的书就是C++Primer Plus的基础,下面就是我的第一程序也是每个程序员入门的第原创 2013-09-20 11:12:21 · 1387 阅读 · 0 评论 -
C++函数模板重载学习笔记
为什么要用函数模板重载呢?有的时候并非所有的类型都是用相同的算法,为了满足这种需求可以重载常规函数的定义那样重载模板。下面是一个简单的例子:原创 2020-05-21 11:13:39 · 724 阅读 · 0 评论 -
C++函数模板学习笔记
函数的模板:不知道函数模板是什么意思看,看了模板二字基本知道函数模板了,估计也就是一函数重复使用意思,只是传不同类似的参数然后返回对应类型的数据。函数模板定义的形式:template或template #include /* run this program using the console pauser or add your own getch, system("pause"原创 2013-10-04 23:50:20 · 1014 阅读 · 0 评论 -
C++中构造函数默认参数学习笔记
C++中函数在定义时可以预先声明默认的形参值,调用时如果给出的实参则用实参初始化形参;如果没有给出实参,则采用预先声明的默认形参值。以下是一个简单的实例:原创 2013-10-04 18:10:47 · 882 阅读 · 0 评论 -
C++函数的重载的学习笔记
Java中有方法的重载和重写,在Java中方法重载的定义是:在同一个类中具有2个或2个以上的方法他们的方法名称完全相同,只是方法的参数的个数不同或者方法参数的类型不同的这种方法就叫方法重载,在C++中和java的的定义基本相同,在java中叫方法在C++中叫函数,在C++中的定义是2个以上的函数具有相同的函数名,但是形参的个数或着类型不同,这种函数叫函数重载。其实二者都是一个道理。一下是函数参原创 2013-10-04 16:03:26 · 764 阅读 · 0 评论 -
C++中内联函数的使用学习笔记
在C++中使用inline关键字来定义内联函数,inline关键字放在函数定义中函数类型之前,在C++中除具有循环语句、swith语句的函数不能说明为内联函数外,其他的函数都可以说明为内联函数。内联函数的实例:#include /* run this program using the console pauser or add your own getch, system("pa原创 2013-10-04 15:25:47 · 773 阅读 · 0 评论 -
C++函数返回一个对象学习笔记
学习中的一些代码记录:#include #include using namespace std;string input(const int m);/* run this program using the console pauser or add your own getch, system("pause") or input loop */int main(原创 2013-10-03 20:46:54 · 880 阅读 · 0 评论 -
C++中const保护数据的学习笔记
Java中保护数据用的是final在C++中用到的const下面写个例子测试下保护数据 #include #include #include /* run this program using the console pauser or add your own getch, system("pause") or input loop */int negate(const原创 2013-10-03 17:50:31 · 778 阅读 · 0 评论 -
C++函数的参数及其传递方式学习笔记
在Java中参数的传递方式一种是传值一种是传对象,也就是传对象的地址,看了下书发现在C++中传递参数的方式也有2中,和Java的一样传值和传引用第一种传值的方式:#include #include #include void garade(char c);/* run this program using the console pauser or add your o原创 2013-10-03 16:31:26 · 711 阅读 · 0 评论 -
C++标准库提供的complex定义的复数对象学习笔记
complex类可以定义多种数据类型的复数,其实部和虚部的数据类型可以是整数也可以是实数,即complex类是一个模板类,定义复数对象时,才指明数据成员类型,格式为:complex 对象名称(实部值,虚部值);#include #include #include /* run this program using the console pauser or add your o原创 2013-10-03 15:17:32 · 24682 阅读 · 2 评论 -
C++中String类的截取字符串学习笔记
Java中截取字符串的方法有subString()的方法,可以方便的截取所需要的字符串,下面来学习下C++中截取字符串的方法。原创 2013-10-03 14:40:34 · 20955 阅读 · 0 评论