- 博客(19)
- 资源 (26)
- 收藏
- 关注
原创 c++面试题集锦--c++基础(持续更新)
RAII(Resource Acquisition Is Initialization,资源获取即初始化)是C++语言中管理资源(如内存、文件句柄、网络连接等)的一种惯用法。它的核心思想是将资源的管理绑定到对象的生存周期上,利用对象的生命周期来控制资源的分配与释放,确保资源在使用完毕后能够被正确释放,从而避免资源泄漏。构造函数获取资源:在对象的构造函数中进行资源的分配。析构函数释放资源:在对象的析构函数中进行资源的释放。对象作用域管理资源:通过对象的作用域来控制资源的生命周期。
2024-09-21 14:31:04
1669
转载 第七章 类 (Class)
类背后的基本思想数据抽象(data abstraction)和封装数据抽象是一种依赖于接口(interface)和实现(implementation)分离的编程技术。
2024-09-18 21:46:25
92
转载 第六章 函数
特点:(1)可变参数模板可以接受不同类型的参数。(2)可以递归展开参数包,进行参数的处理。(3)通常用于函数模板,使得函数能够接受任意数量和类型的参数。可变参数模板是一种模板编程技术,可以让你创建能够接受任意数量参数的模板函数或模板类。语法来表示参数包(parameter pack),可以在函数参数、模板参数或函数参数类型中使用。(2)它通常用于初始化类成员,特别是容器类的元素。两者在具体使用时可以根据需要选择,如果是为了初始化一组相同类型的元素,如果需要处理不同类型或数量的参数,可变参数模板更为强大。
2024-09-18 10:58:25
190
原创 c++基础知识(4)
在c++当中,常常会使用动态内存,其中经常使用的是malloc,calloc,realloc。使用_msize()函数可以获得指针指向的内存空间大小,例如int *p=(int *)malloc(4*sizeof(int));cout
2024-09-16 19:47:57
540
原创 c++基础知识(3)
引言对于任何使用 C 语言的人,如果问他们 C 语言的最大烦恼是什么,其中许多人可能会回答说是指针和内存泄漏。这些的确是消耗了开发人员大多数调试时间的事项。指针和内存泄漏对某些开发人员来说似乎令人畏惧,但是一旦您了解了指针及其关联内存操作的基础,它们就是您在 C 语言中拥有的最强大工具。本文将与您分享开发人员在开始使用指针来编程前应该知道的秘密。本文内容包括:导致内存破坏的指针操作类型 在使用动态
2024-09-16 19:47:43
1033
1
原创 c++基础知识(2)
内存溢出:内存溢出是指应用系统中存在无法回收的内存或使用的内存过多,最终使得程序运行要用到的内存大于计算机能提供的最大内存。在windows系统中,一般提供的栈的大小是1M或者2M 导致内存溢出问题的原因有很多,比如: (1) 使用非类型安全的语言如 C/C++ 等。 (2) 以不可靠的方式存取或者复制内存缓冲区。 (3) 编译器设置的内存缓冲区太靠近关键数据结构。 下面来分析这些
2024-09-16 19:47:23
423
原创 c++基础知识(1)
1、 拷贝构造函数:拷贝构造函数是一种特殊的构造函数,函数名与类名一致,必须的参数时本类型的一个引用变量。 三种会调用拷贝构造函数的情况; (1)对象作为函数的参数传递的时候会建立一个临时的对象拷贝; (2)对象以值传递的方式从函数返回; (3)用一个对象去初始化另一个类型相同的对象。 浅拷贝:对象赋值的时候,只对对象中的数据成员进行简单的赋值; 深拷贝:在对象赋值的时候,对于动态成员
2024-09-16 19:47:00
672
1
原创 计算机组成与结构拆炸弹实验LAB3
实验题目:LAB3(拆炸弹) 实验目的: 程序运行在linux环境中。程序运行中有6个关卡(6个phase),每个phase需要用户在终端上输入特定的字符或者数字才能通关,否则会引爆炸弹!那么如何才能知道输入什么内容呢?这需要你使用gdb工具反汇编出汇编代码,结合c语言文件找到每个关卡的入口函数。然后分析汇编代码,找到在每个phase程序段中,引导程序跳转到“explode_bomb”程序段的地
2024-09-16 19:46:45
1027
1
转载 第三章 字符串、向量和数组
初始化string方式解释string s1默认初始化,s1是个空字符串s2是s1的副本等价于s2(s1)s2是s1的副本s3是字面值“value”的副本,除了字面值最后的那个空字符外等价于s3是字面值"value"的副本把s4初始化为由连续n个字符c组成的串拷贝初始化(copy initialization):使用等号将一个已有的对象拷贝到正在创建的对象。直接初始化(direct initialization):通过括号给对象赋值。区别在于是否使用等号初始化vector对象的方法方法解释v1。
2024-09-16 17:51:02
189
转载 第二章 变量和基本类型
定义形式:类型说明符(type specifier) + 一个或多个变量名组成的列表。如初始化(initialize):对象在创建时获得了一个特定的值。初始化不是赋值!初始化 = 创建变量 + 赋予初始值赋值 = 擦除对象的当前值 + 用新值代替列表初始化:使用花括号{},如默认初始化:定义时没有指定初始值会被默认初始化;在函数体内部的内置类型变量将不会被初始化。建议初始化每一个内置类型的变量。尽量不要把类定义和对象定义放在一起。如类可以以关键字struct开始,紧跟类名和类体。
2024-09-14 17:40:54
154
原创 如何将图片做成类似train-images-idx3-ubytexings
如何将图片做成类似train-images-idx3-ubyte形式 使用过caffe2的人都知道,caffe2可以对图像进行处理,但是caffe2并不接受直接使用图片进行训练。在使用之前,需要将图片保存成一种特殊的二进制形式,图片文件和二进制文件之间的转换存在一种固定的协议。 如何把一个二进制文件解析成图片文件,在这篇博http://blog.youkuaiyun.com/u014046170/...
2017-09-16 21:30:30
8415
22
原创 Ubuntu16.04-x64安装caffe2(仅CPU)
Ubuntu16.04-x64安装caffe2(仅CPU)Caffe2是一个相对比较新的平台,在caffe2的安装过程中可能会出现各种各样的问题,大家保持耐心,总是可以安装好的。Caffe2的安装过程大家可以参考caffe2官网提供的教程https://caffe2.ai/docs/getting-started.html?platform=ubuntu&configuration=com
2017-09-16 21:07:02
912
原创 Ubuntu16.04-x64安装caffe(仅CPU)并测试
Ubuntu16.04-x64安装caffe(仅CPU)并测试Caffe作为深度学习中框架之一,在图像处理,机器视觉方面受到广泛的应用。但是在caffe的安装过程中遇到诸多问题。在此,我们将基本流程以及经常会遇到的问题记录下来,供大家使用。 我们使用的安装环境是腾讯云主机,配置如图,类似的配置也可以按照此教程进行安装。由于云主机内存受限,无法正常运转桌面系统,所以笔者所在的小组
2017-09-16 20:43:55
1711
转载 java编程思想
1——面向对象和JVM基础 1.java中的4种访问制权限:(1).public:最大访问控制权限,对所有的类都可见。(2).protect:同一包可见,不在同一个包的所有子类也可见。(3).default:包访问权限,即同一个包中的类可以可见。默认不显式指定访问控制权限时就是default包访问控制权限。(4).private:最严格的访问控制权限,仅该类
2017-01-02 14:38:36
1046
原创 基于STC串口通信和VC6.0MFC编程的电子琴设计
电子实训课程实验项目 --电子琴【前言】 为进一步激发学生对于硬件编程的兴趣而开展的课程“电子实训”课程到目前为止已经要告一段落了。将近四周的时间,从电路板印刷、贴片参观,到自己亲手将原件焊接到电路板上,再到一步一步熟悉STC编程当中的技巧,我们渐渐对硬件编程有了初步的认识,虽然并不一定能完成什么高级的设计,但是对目前所涉及到的数码
2016-09-17 09:21:01
2775
vscode-server-linux-x64.tar(1).gzcode server
2022-01-13
secureCRT8.1.3应用程序以及注册机
2017-08-20
设计模式之禅
2017-03-06
深入浅出设计模式
2017-03-05
深入浅出密码学——常用加密技术原理与应用
2017-02-22
计算机视觉
2017-02-22
机器人学导论 (原书第3版)_(美)HLHN J.CRAIG著 贠超等译
2017-02-22
深入浅出密码学
2017-02-22
vs2013中配置opencv1.0+详细教程以及图像拼接源码
2017-02-21
系统分区工具
2016-10-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人