![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
编程语言
hai008007
这个作者很懒,什么都没留下…
展开
-
C++右值引用、左值引用、完美转发
https://www.jianshu.com/p/d19fc8447eaa转载 2021-07-24 13:26:50 · 229 阅读 · 0 评论 -
python的闭包
我觉得这篇博文写得很好:https://blog.csdn.net/Yeoman92/article/details/67636060解释以下代码的输出:转载 2018-06-03 22:52:48 · 113 阅读 · 0 评论 -
由一道python面试题引发的闭包的思考
def fun(): temp=[lambda x:x*i for i in range(4)] return tempfor every in fun(): print(every(2))这段代码的输出是:6,6,6,6其中涉及到python的闭包。什么是python的闭包:1.定义 闭包是函数式编程的一个重要的语法结构,函数式编程是一种编程范式 (而面向过程编程和面...转载 2018-06-03 22:53:26 · 2157 阅读 · 6 评论 -
C++typedef的详细用法
转自知乎的一段解释:作者:知乎用户链接:https://www.zhihu.com/question/29798061/answer/144423125来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。不太想谈#define, 在题主的例子的这种用法里, 它就是个文本替换工具, 预处理器完成的, 无脑替换, 跟word里的replace一模一样, 不关编译器的事. 我想...转载 2018-06-11 15:12:25 · 81460 阅读 · 35 评论 -
typedef的用法总结
在C还是C++代码中,typedef都使用的很多,在C代码中尤其是多。typedef与#define有些相似,其实是不同的,特别是在一些复杂的用法上,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,加上自己的一个分析。基本定义:typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数...转载 2018-06-11 15:17:17 · 1215 阅读 · 0 评论 -
C++的虚函数
虚函数联系到多态,多态联系到继承。所以本文中都是在继承层次上做文章。没了继承,什么都没得谈。下面是对C++的虚函数这玩意儿的理解。一, 什么是虚函数(如果不知道虚函数为何物,但有急切的想知道,那你就应该从这里开始)简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解...转载 2018-06-11 23:11:55 · 118 阅读 · 0 评论 -
超详细的const 指针与指向const的指针
最近在复习C++,指针这块真的是重难点,很久了也没有去理会,今晚好好总结一下const指针,好久没有写过博客了,记录一下~const指针的定义: const指针是指针变量的值一经初始化,就不可以改变指向,初始化是必要的。其定义形式如下:type *const 指针名称; 声明指针时,可以在类型前或后使用关键字const,也可在两个位置都使用。例如,下面都是合法的声明,但是含义大不同:const...转载 2018-06-06 11:20:22 · 36630 阅读 · 11 评论 -
C++中new 一个对象的时候加括号和不加括号的区别
先把结论放上来: 加括号调用没有参数的构造函数,不加括号调用默认构造函数或唯一的构造函数,看需求 C++在new时的初始化的规律可能为:对于有构造函数的类,不论有没有括号,都用构造函数进行初始化;如果没有构造函数,则不加括号的new只分配内存空间,不进行内存的初始化,而加了括号的new会在分配内存的同时初始化为0。 以下代码:#include <iostream>using name...转载 2018-06-24 15:02:40 · 776 阅读 · 0 评论 -
C++ Thread类传入某类的函数作为参数时,要在随后传入该类的对象
std::thread 调用类的成员函数需要传递类的一个对象作为参数:#include <thread>#include <iostream>class bar {public: void foo() { std::cout << "hello from member function" << std::endl; }...原创 2018-09-05 13:31:07 · 4695 阅读 · 0 评论 -
#ifndef/#define/#endif使用详解
想必很多人都看过“头文件中的 #ifndef/#define/#endif 防止该头文件被重复引用”。但是是否能理解“被重复引用”是什么意思?是不能在不同的两个文件中使用include来包含这个头文件吗?如果头文件被重复引用了,会产生什么后果?是不是所有的头文件中都要加入#ifndef/#define/#endif 这些代码? 其实“被重复引用”是指一个头文件在同一个cpp文件中被inclu...转载 2018-05-22 21:08:06 · 145 阅读 · 0 评论 -
C++之为什么基类的析构函数是虚函数?
注:本文章内容大部分来自网站整理。1.为什么基类的析构函数是虚函数? 在实现多态时,当用基类操作派生类,在析构时防止只析构基类而不析构派生类的状况发生。 下面转自网络:源地址 http://blog.sina.com.cn/s/blog_7c773cc50100y9hz.html a.第一段代码#include<iostream>using namespace std;cl...转载 2018-05-08 17:28:15 · 1400 阅读 · 0 评论 -
python装饰器
装饰器是程序开发中经常会用到的一个功能,用好了装饰器,开发效率如虎添翼,所以这也是Python面试中必问的问题,但对于好多小白来讲,这个功能 有点绕,自学时直接绕过去了,然后面试问到了就挂了,因为装饰器是程序开发的基础知识,这个都 不会,别跟人家说你会Python, 看了下面的文章,保证你学会装饰器。1、先明白这段代码 #### 第一波 ####def foo(): prin...转载 2018-05-08 15:10:08 · 139 阅读 · 0 评论 -
numpy的广播机制
广播原则:如果两个数组的后缘维度(即:从末尾开始算起的维度)的轴长相符或其中一方的长度为1,则认为它们是广播兼容的,广播会在缺失和(或)长度为1的轴上进行....原创 2018-03-24 22:25:46 · 252 阅读 · 0 评论 -
C++之多线程实现(C++11)
https://blog.csdn.net/dcrmg/article/details/53912941转载 2018-05-08 21:48:19 · 38299 阅读 · 0 评论 -
C++之利用typedef定义函数指针
转自:https://blog.csdn.net/u014114990/article/details/47748747进入正文: 代码简化, 促进跨平台开发的目的. typedef 行为有点像 #define 宏,用其实际类型替代同义字。 不同点:typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。用法一:typedef int (*MYFUN)(int, int); ...转载 2018-05-09 10:28:04 · 11271 阅读 · 1 评论 -
C++之泛型基础
1.泛型的基本思想泛型编程(Generic Programming)是一种语言机制,通过它可以实现一个标准的容器库。像类一样,泛型也是一种抽象数据类型,但是泛型不属于面向对象,它是面向对象的补充和发展。在面向对象编程中,当算法与数据类型有关时,面向对象在对算法的抽象描述方面存在一些缺陷。比如对栈的描述:class stack{ push(参数类型) //入栈算法 pop(参数类型) ...转载 2018-05-09 16:17:56 · 202 阅读 · 0 评论 -
C++之拷贝构造函数
C++ primer p406 :拷贝构造函数是一种特殊的构造函数,具有单个形参,该形参(常用const修饰)是对该类类型的引用。当定义一个新对象并用一个同类型的对象对它进行初始化时,将显示使用拷贝构造函数。当该类型的对象传递给函数或从函数返回该类型的对象时,将隐式调用拷贝构造函数。C++支持两种初始化形式:拷贝初始化 int a = 5; 和直接初始化 int a(5); 对于其他类型没有什么...原创 2018-05-07 18:04:47 · 90 阅读 · 0 评论 -
C++之new与delete的用法
起初刚学C++时,很不习惯用new,后来看老外的程序,发现几乎都是使用new,想一想区别也不是太大,但是在大一点的项目设计中,有时候不使用new的确会带来很多问题。当然这都是跟new的用法有关的。new创建类对象,使用完后需使用delete删除,跟申请内存类似。所以,new有时候又不太适合,比如在频繁调用场合,使用局部new类对象就不是个好选择,使用全局类对象或一个经过初始化的全局类指针似乎更加高...转载 2018-05-07 19:01:16 · 2885 阅读 · 0 评论 -
为什么复制构造函数的参数需要加const和引用
#include <iostream>using namespace std;class CExample{public: CExample(int x) :m_nTest(x) //带参数构造函数 { cout<< "constructor with argument."<<endl; } CExample(const C...转载 2018-05-07 21:37:32 · 2375 阅读 · 0 评论 -
C++之子类构造函数写法总结
最近几天在看《C++编程实战》的时候,在一段代码中遇到了C++继承的构造函数该怎么写的问题,当时不是很明白。后来,自己上网查阅相关的资料,终于把这个问题搞清楚了。为了自己以后的不时之需,特地将其进行了一个简要的总结。 我们知道,构造方法是用来初始化类对象的。如果在类中没有显式地声明构造函数,那么编译器会自动创建一个默认的构造函数;并且这个默认的构造函数仅仅在没有显式地声明构造函数的情...转载 2018-05-07 22:33:05 · 9124 阅读 · 1 评论