c++ and人工智能
null_null999
这个作者很懒,什么都没留下…
展开
-
C/C++中extern关键字详解
https://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777431.html 1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。此外extern也可用来进行链接指定。 也就是说extern有两个作用,第一个,当它与"C"一转载 2018-01-17 09:15:33 · 134 阅读 · 0 评论 -
传引用
#include using namespace std; inline void swapnum(int& a,int& b){ int temp=a; //temp=a; a=b; b=temp; } //对于这个传引用的函数不能直接swapnum(1,2),因为引用本身必须要有一个变量进行赋值,所以必须先是有一个int变量。 inline void swapn(i原创 2017-06-19 08:55:59 · 263 阅读 · 0 评论 -
类模板讲得比较清晰
http://c.biancheng.net/cpp/biancheng/view/213.html转载 2017-06-01 15:14:15 · 257 阅读 · 0 评论 -
c++内联函数
内联函数必须是和函数体申明在一起,才有效。像这样的申明Inline Tablefunction(int I)是没有效果的,编译器只是把函数作为普通的函数申明,我们必须定义函数体。 Inline tablefunction(int I) {return I*I}; 这样我们才算定义了一个内联函数。我们可以把它作为一般的函数一样调用。但是执行速度确比一般函数的执行速度要快。 我们也可以转载 2017-06-01 13:44:17 · 253 阅读 · 0 评论 -
c++ 在函数后加const是什么意思?
c++ 在函数后加const的意义: 我们定义的类的成员函数中,常常有一些成员函数不改变类的数据成员,也就是说,这些函数是"只读"函数,而有一些函数要修改类数据成员的值。如果把不改变数据成员的函数都加上const关键字进行标识,显然,可提高程序的可读性。其实,它还能提高程序的可靠性,已定义成const的成员函数,一旦企图修改数据成员的值,则编译器按错误处理。 const成员函数和const对象转载 2017-05-31 11:33:57 · 794 阅读 · 0 评论 -
C++中const迭代器 和 const_iterator的区别
http://blog.csdn.net/wmn_wmn/article/details/8144151 话说这两个区别非常大,但是不太好理解啊,而且感觉解释也是各种绕口。说一下我自己的理解吧。 const迭代器,顾名思义,就是不能改变的迭代器,是常量,其性质是由const决定的。比如说我们这样定义一个const迭代器。 [cpp] view plai转载 2017-04-27 15:12:55 · 302 阅读 · 0 评论 -
::
(1)表示“域操作符” 例:声明了一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f的定义,那么在类外定义f时, 就要写成void A::f(),表示这个f()函数是类A的成员函数。 (2)直接用在全局函数前,表示是全局函数 例:在VC里,你可以在调用API 函数里,在API函数名前加:: (3)表示引用成员函数及变量,作转载 2017-04-27 09:08:59 · 238 阅读 · 0 评论 -
c++内联函数
了解内联函数,首先要知道c++函数调用过程 function a( 调用funb() ) 在这个调用过程里,首先a会保留自身的状态,之后再去寻找 b的内存地址,准确地说,是在调用b的时候,新开辟出的内存,将b的字节码装载到这个内存区域,a在调用完b之后,b这个内存地址里的数据就会清空,之后,再回到a之前保存的状态继续执行 所以,为了减少这种耗时的操作,c++使用了内联函数,内联函数基本原创 2017-01-31 10:03:02 · 239 阅读 · 0 评论 -
int & const t和 int const& t
http://bbs.csdn.net/topics/40366063 #include #include int main() { int i = 0; int const& j = i; int & const t = i; const int& m = i; i = 3; t = 5; printf("j = %d m = %d t = %d i = %转载 2017-06-07 13:57:00 · 850 阅读 · 0 评论 -
T const & 和 const T&
这两者是等价的········简直醉了,那你为什么不规定一种写法呢,没用的语法真多原创 2017-06-07 14:03:54 · 633 阅读 · 0 评论 -
cpp调用其他cpp
楼注注意 不要被误导 不需要include B 任何形式的文件 不管是.h 还是cpp 只要在a.cpp中声明了就行 可以试一下 a.cpp 和 b.cpp在一个工程中编译就ok 运行显示 ccccca 不需要incude b的任何东西,链接器会做C/C++ code?123456789101112131415a.cppint c(void);void main(void){ c();} b.cp转载 2017-08-11 17:25:24 · 450 阅读 · 0 评论 -
c语言malloc函数
https://zhidao.baidu.com/question/442720454.html int * p = (int *)malloc(10); //我如果为整形数组p分配10个字节; p[0] = 0;p[1]= 1;p[2]=2; printf("%d%d%d\n", sizeof(p[0]),sizeof(p[1]),sizeof(p[2])); //为p数组分配三个元素转载 2017-08-04 14:47:37 · 689 阅读 · 0 评论 -
jni调用java
JNIEXPORT jstring JNICALL Java_com_example_xhp_mytest_MainActivity_show(JNIEnv *env, jobject instance) { // TODO jclass jclass1=env->GetObjectClass(instance);//非静态方法直接传入调用者 // jclass原创 2017-08-10 18:10:21 · 280 阅读 · 0 评论 -
Jni接口-深入研究参数的传递(一)
http://www.cnblogs.com/lsnproj/archive/2012/01/09/2317519.html 在上一个随笔中介绍了怎样实现一个简单的Jni小程序。在这一篇里主要是说一下JAVA与C++之间的参数传递问题。 本人是个Java程序员,工作没几年 菜鸟级别,C++不是很熟悉,但对.NET到是了解一些,所以这里面的C++部分都用C++.net来讲的。为了转载 2017-08-10 13:28:23 · 372 阅读 · 0 评论 -
c++指针与数组
http://c.biancheng.net/cpp/biancheng/view/162.html 我发现这网站真不错,很多东西都是归纳总结式的 指向数组元素的指针 一个变量有地址,一个数组包含若干元素,每个数组元素都在内存中占用存储单元,它们都有相应的地址。指针变量既然可以指向变量,当然也可以指向数组元素(把某一元素的地址放到一个指针变量中)。所谓数组元素的指针就是数组元素的地址转载 2017-06-13 14:09:02 · 639 阅读 · 0 评论 -
指针加1
指针加1要根据指针自身类型加上一定的值, 不同类型的指针+1之后增加的大小不同。转载 2017-06-13 09:42:48 · 331 阅读 · 0 评论 -
vector::erase()方法的详细介绍及问题解答
http://blog.sina.com.cn/s/blog_6377b8e60100ino6.html vector::erase():从指定容器删除指定位置的元素或某段范围内的元素 vector::erase()方法有两种重载形式 如下: iterator erase( iterator _Where); 1.iterator erase( itera转载 2017-04-27 14:51:16 · 471 阅读 · 0 评论 -
c++数组名是一个指针常量
也就是const的 说实话c++真是一门狗屎语言,你不想改变值就不改变,用尼玛的const,这不仅是加了const就是const了,还有许多隐蔽的const const,private,public这些东西,十有八九是用来做框架才用到的 但是有几个人会去做框架? 自己限定自己用他么的const? 这些东西,其实都应该分到一个目录中去,就是框架部分,否则,真的是浪费学习者大量的时间。原创 2017-06-15 09:32:51 · 1306 阅读 · 0 评论 -
数组名代表第一个元素
char str[] = "http://c.biancheng.net"; char *pstr = str;//因为str 代表字符数组中的第一个字符,所以类型是相同的。数组名代表第一个元素,这哪煞笔设定的这规则? char* b=&str//错误,因为&str代表整个数组,类型不同 char *tes=&str[0];原创 2017-06-19 14:56:51 · 991 阅读 · 0 评论 -
字符窜数组指针 字符窜指针
http://c.biancheng.net/cpp/html/80.html C语言中没有特定的字符串类型,我们通常是将字符串放在一个字符数组中,这在《C语言字符数组和字符串》中已经进行了详细讲解,这里不妨再来演示一下: #include int main(){ char str[] = "http://c.biancheng.net"; int len = strl转载 2017-06-19 14:26:23 · 215 阅读 · 0 评论 -
void指针(void *的用法)
http://blog.chinaunix.net/uid-22197900-id-359211.html 指针有两个属性:指向变量/对象的地址和长度 但是指针只存储地址,长度则取决于指针的类型 编译器根据指针的类型从指针指向的地址向后寻址 指针类型不同则寻址范围也不同,比如: int*从指定地址向后寻找4字节作为变量的存储单元 double*从指定地址向后寻找8字节作为转载 2015-10-26 14:14:01 · 513 阅读 · 0 评论 -
jni操作bitmap
JNIEXPORT jint JNICALL JNI_SetImage(JNIEnv * env, jobject obj, jobject bitmap ) { char *pData=0; AndroidBitmapInfo info; void* pixels; int r=0; if ((r = AndroidBitmap_getInfo(env, bitmap, &info)原创 2015-10-26 11:01:18 · 1488 阅读 · 0 评论