首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
qq18457852
获赞
411
粉丝
107
关注
1
看过 TA
152
女
Beis Medrash Heichal Dovid (Far Rockaway)
2021
golang
IP属地:黑龙江
rust
私信
关注
拉黑
举报
举报
确定要拉黑qq18457852吗?
发布(128)
评论
刷题
收藏
qq18457852
关注TA,不错过内容更新
关注
2019-12-19 15:35
Beis Medrash Heichal Dovid (Far Rockaway) golang
c++深拷贝和浅拷贝
例子: 老师给你们留了作业,你们班只有小A一个人会写,其他人都需要copy他的作业。 如果你们都是通过浅拷贝来完成作业,那么就相当与“在你需要的时候,小A会把作业借给你”。 例 如,老师对小B说“去把你的作业拿来给我看看”,小B赶快找小A借作业给老师看。老师又要看小C的作业,小C也只能找小A借过来应付老师。总之老师如果一 个一个的检查作业,你们都能应付,因为你们只有一本作业互相借着看一下就OK了。如果老师说“全班把作业一起交上来”,那你们就完蛋了。 深拷贝就是每个人都实实在在的抄了一份作业,每个人的作业都是自己抄来的,所以老师收全班的作业你们也不怕,要多少本就给他多少. 浅拷贝和深...
0
点赞
评论
收藏
分享
2019-12-19 15:34
Beis Medrash Heichal Dovid (Far Rockaway) golang
操作系统批处理调度算法与进程调度算法
常见的批处理作业调度算法 1.先来先服务调度算法(FCFS):就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单,公平。其缺点是没有考虑到系统中各种资源的综合使用情况,往往使短作业的用户不满意,因为短作业等待处理的时间可能比实际运行时间长得多。 2.短作业优先调度算法(SPF): 就是优先调度并处理短作业,所谓短是指作业的运行时间短。而在作业未投入运行时,并不能知道它实际的运行时间的长短,因此需要用户在提交作业时同时提交作业运行时间的估计值。 3.最高响应比优先算法(HRN):FCFS可能造成短作业用户不满,SPF可能使得长作业用户不满,于是提出HRN,选择响应比最高的...
0
点赞
评论
收藏
分享
2019-12-19 15:34
已编辑
Beis Medrash Heichal Dovid (Far Rockaway) golang
动态内存,智能指针
由编译器自动分配的内存都有着严格的生存期。全局对象在程序启动时分配,在程序结束时销毁。对于局部自动对象,当我们进入其定义所在的程序块时被创建,在离开块时销毁。局部static对象在第一次使用前分配,在程序结束时销毁。 除了自动和static对象外,C++还支持动态分配对象。动态分配的对象的生存期与它们在哪里创建是无关的,只有当显式地被释放时,这些对象才会销毁。 静态内存用来保存局部static对象,类static数据成员以及定义在任何函数之外的变量。栈内存用来保存定义在函数内的非static对象。分配在静态或栈内存中的对象由编译器自动创建和销毁。对于栈对象,仅在其定义的程序块运行时才存在,...
0
点赞
评论
收藏
分享
2019-12-19 15:33
Beis Medrash Heichal Dovid (Far Rockaway) golang
嵌套类,局部类
嵌套类 所谓嵌套类就是可以在一个类中定义另一个类。这个被嵌套的类的作用域就只在它的上一级类中。下面是个例子: #include <iostream> using namespace std; class c1 { public: int a; void foo(); class c2 { public: int a; void foo(); } b; }; void c1::foo() { a = 1; } void c1::c2::foo() { a = 2; } int m...
0
点赞
评论
收藏
分享
2019-12-19 15:33
Beis Medrash Heichal Dovid (Far Rockaway) golang
PIMPL模式: Pointer to Implementation
1 PIMPL解释 PIMPL(Private Implementation 或 Pointer to Implementation)是通过一个私有的成员指针,将指针所指向的类的内部实现数据进行隐藏。 2.分析 //x.h class X { public: void Fun(); private: int i; //add int i; }; //c.h #include <x.h> class C { public: void Fun(); private: X x; //与X的强耦合 }; PIMPL做法: //c.h class X; //代替#includ...
0
点赞
评论
收藏
分享
2019-12-19 15:33
已编辑
Beis Medrash Heichal Dovid (Far Rockaway) golang
c++重载重写与重定义
1 成员函数重载特征: a 相同的范围(在同一个类中) b 函数名字相同 c 参数不同 d virtual关键字可有可无 e 不可按返回值类型判断是否重载:无法以返回值类型作为重载函数的区分标准。 class base { public: void foo() {}; int foo() {}; }; 编译器会报错,因为foo的参数相同只有返回值类型不同不可被重载。 2 重写(覆盖)是指派生类函数覆盖基类函数,特征是: a 不同的范围,分别位于基类和派生类中 b 函数的名字相同 c 参数相同 d 基类函数必须有virtual关键字 3 重定义(...
0
点赞
评论
收藏
分享
2019-12-19 15:32
Beis Medrash Heichal Dovid (Far Rockaway) golang
进程间通信与线程间通信(二)
一、进程间的七大通信方式 signal、file、pipe、shm、sem、msg、socket 1,signal 信号通信的目的:某某事件发生!此时需要处理什么,进程间(可以是不相关的进程)传递信号 场景:信号又被称之为中断,需要处理什么对应的是中断处理函数,此时设置断点,形参入栈,保存现场信息,然后去执行中断处理函数,当处理完成之后,恢复现场信息,程序继续往下执行 Linux下可以通过kill -l查看其所有信号(其一共64种信号) 发送信号:kill(pid, 信号) //对指定的进程发送什么信号 raise(信号) <==> kill(getpid(), 信号) /...
0
点赞
评论
收藏
分享
2019-12-19 15:32
Beis Medrash Heichal Dovid (Far Rockaway) golang
进程间通信与线程间通信(一)
很多书或者博客都说了进程间通信有几种方式,线程间通信有几种方式,我说一下进程间通信与线程间通信的本质以及要注意的问题。 1.一个进程如何把信息传递给另一个进程 2.确保两个或更多的进程在活动中不会出现交叉,比如,两个工作进程不会服务于一个任务进程, 一个工作进程也不会服务两个任务进程 3.正确的执行顺序,比如进程A为创建进程,进程B为消费进程, 则需要A进程先执行,B进程后执行 以上都是关于进程间通信的,而线程间通信其实也是一样的,毕竟对于Linux内核来说,线程就是共用地址空间的进程而已,因此除了传递消息的方式不一样之外,线程间通信和进程间通信没有区别,(在不同地址空间的线程间通信需要按进程...
0
点赞
评论
收藏
分享
2019-12-19 15:32
已编辑
Beis Medrash Heichal Dovid (Far Rockaway) golang
linux条件变量pthread_cond,生产者消费者模型
1.初始化条件变量pthread_cond_init #include <pthread.h> int pthread_cond_init(pthread_cond_t *cv, const pthread_condattr_t *cattr); 返回值:函数成功返回0;任何其他返回值都表示错误 初始化一个条件变量。当参数cattr为空指针时,函数创建的是一个缺省的条件变量。否则条件变量的属性将由cattr中的属性值来决定。调用 pthread_cond_init函数时,参数cattr为空指针等价于cattr中的属性为缺省属性,只是前者不需要cattr所占用的内存开销。这个函数返回...
0
点赞
评论
收藏
分享
2019-12-19 15:31
Beis Medrash Heichal Dovid (Far Rockaway) golang
进程线程协程纤程
任务、作业(Job,Task,Schedule) 在进程的概念出现之前,进程有着这样的称谓。 进程 为了使多个程序能够并发(同一时刻只有一个在运行,但感觉起来像多个同时运行;并行(同一时刻真的多个在运行,不是感觉像多个))的执行,操作系统需要一个结构来抽象和表示这个程序的运行。 进程是操作系统对一个正在运行的程序的一种抽象结构。 进程是指在操作系统中能独立运行并作为资源分配的基本单位,由一组机器指令、数据和堆栈等组成的能独立运行的活动实体。 操作系统可以同时运行多个进程,多个进程直接可以并发执行和交换信息。 进程在运行是需要一定的资源,如CPU、存储空间和I/O设备等。 线程 进程是资源分...
0
点赞
评论
收藏
分享
2019-12-19 15:31
Beis Medrash Heichal Dovid (Far Rockaway) golang
c++左值右值与移动构造函数
#include <iostream> #include <cstring> #include <cstdlib> #include <vector> using namespace std; int main() { string st = "I love xing"; vector<string> vc ; vc.push_back(st); cout<<vc[0]<<endl; if(!st.empty()) cout<<st<<endl; return ...
0
点赞
评论
收藏
分享
2019-12-19 15:30
已编辑
Beis Medrash Heichal Dovid (Far Rockaway) golang
c/c++ #头文件路径寻找 -I指令与系统默认路径/usr/include,/usr/local/include...
C/c++中可以通过#include <stdio.h>和#include "stdio.h",区别是: #include <stdio.h>,直接到系统指定目录去查找头文件。 #include "stidio.h",会先到当前目录查找头文件,如果没找到在到系统指定目录查找。 gcc编译时查找头文件,按照以下路径顺序查找: 1. gcc编译时,可以设置-I选项以指定头文件的搜索路径,如果指定多个路径,则按照顺序依次查找。比如, gcc -I /usr/local/include/node a.c 2. gcc会查找环境变量C_IN...
0
点赞
评论
收藏
分享
2019-12-19 15:30
Beis Medrash Heichal Dovid (Far Rockaway) golang
gcc编译之预宏定义 -D 相当于所有文件#define
GCC编译时增加宏定义-D<标识符>,相当于#define <标识符>,可以在遇到条件编译时执行。 #ifdef <标识符> //条件编译内容 #endif 例子: 搭配gcc编译命令:gcc -DDEBUG -g -o main.out main.c (注意-D<标识符>应该紧跟gcc后面,-o等指令前面) main.c #include <stdio.h> //如果在gcc编译参数中定义了-DDEBUG,就相当于在代码中定义#define DEBUG //#define DEBUG int main(int arg...
0
点赞
评论
收藏
分享
2019-12-19 15:30
Beis Medrash Heichal Dovid (Far Rockaway) golang
事件驱动与异步io
https://blog.csdn.net/qq_34173549/article/details/80212101
0
点赞
评论
收藏
分享
2019-12-19 15:29
已编辑
Beis Medrash Heichal Dovid (Far Rockaway) golang
线程同步,互斥量与条件变量,两个线程交叉打印数据
多线程同步一直是一个难点,利用linux的互斥锁与条件变量实现了两个线程交叉打印数据,并且进行初步封装,可重用 /************************************************** * 两个线程交叉打印 * ************************************************/ #include <pthread.h> #include <stdio.h> #include <unistd.h> class thread { public: void thread_init(); void ...
0
点赞
评论
收藏
分享
1
2
3
4
5
6
9
创作者周榜
更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务