C++学习
文章平均质量分 75
勇往直前996
内在清醒,行所当行,敢做就能赢。
展开
-
如何理解互斥锁、条件变量、读写锁以及自旋锁?
锁是一个常见的同步概念,我们都听说过加锁(lock)或者解锁(unlock),当然学术一点的说法是获取(acquire)和释放(release)。恰好pthread包含这几种锁的API,而C++11只包含其中的部分。接下来我主要通过pthread的API来展开本文。mutex(互斥量)mutex(mutual exclusive)即互斥量(互斥体)。也便是常说的互斥锁。尽管名称不含lock,但是称之为锁,也是没有太大问题的。mutex无疑是最常见的多线程同步方式。其思想简单粗暴,多线程共转载 2021-10-27 12:54:14 · 223 阅读 · 0 评论 -
一文详解 C++ 日志框架
1、日志框架日志框架一个经过专门设计的实用程序,用于规范应用程序的日志记录过程。日志框架可以自己编写(需要一定的能力哦),也可以由第三方(例如:log4cplus)提供。对于不同的日志框架,各自在实现方式上也有所不同。虽然可以简单地“标准化”日志(例如:调用文件系统 API,将信息写入名为 log.txt 的文件),但是要成为一个严格意义上的框架,必须要超越标准化。也就是说,日志框架必须通过处理日志记录来标准化解决方案,从而暴露一个标准的 API。没明白?那就再具体一些,设想一个日志框.转载 2021-09-29 13:26:13 · 1238 阅读 · 1 评论 -
无法定位程序输入点_except1于动态链接库MSVCR120.dll
重新下了最新版本的visual C++2013运行库,再安装QT,结果没有问题了。这里提供一个下载链接,亲测可用:Microsoft Visual C++2013运行库原创 2021-09-19 13:35:46 · 1470 阅读 · 0 评论 -
C、C++编程学习资料收藏
怎么算入门,我觉得可以入手做一些项目就算入门了。 需要掌握至少一门编程语言,例如,C/C++或者 Java; 需要学习数据结构与算法,至少掌握常见的数据结构与算法; 需要学习数据库知识,因为做项目几乎离不开数据库,数据库必须掌握; 掌握一门技能,例如后端开发、web 开发、移动端开发、人工智能等; 当然还需要进一步精进,可以学习操作系统,计算机网络,计算机组织原理、汇编等相关专业课程。C语言刚开始就是泡书,然后就是抄代码,上机调试,模仿修改,看 n 遍...转载 2021-09-09 22:08:44 · 597 阅读 · 1 评论 -
#include使用引号“”和尖括号<>的区别
很多程序员写代码,可能没有仔细研究过#include相关的内容,下面就来简单说说。1、关于#include首先,#include为预处理语句,那么什么是预处理语句呢?预处理语句最明显的标志是一些行首以#开始的特殊语句。例如:#include、 #define、#if等就是预处理语句。在程序的其它编译处理(词法分析、语法分析、代码生成、优化和连接等)之前,先进行这些语句的分析处理。在编译工具中,有一个叫预处理器,预处理器发现 #include 指令后,就会进行一些预处理操作。...转载 2021-03-08 12:45:32 · 953 阅读 · 0 评论 -
C++ STL简述
一、STL概论 长久以来,软件界一直希望建立一种可重复运用的东西, 以及一种得以制造出“可重复运用的东西”的方法,让工程师/程序员的心血不 致于随时间迁移、人事异动 、私心欲念、人谋不臧 而烟消云散。从子程序(subroutines)、程序(procedures)、 函式(functions)、类别(classes),到函式库(function libraries)、类别库(class...转载 2020-04-25 16:36:11 · 188 阅读 · 0 评论 -
C++中引用(&)的用法和应用实例
对于习惯使用C进行开发的朋友们,在看到c++中出现的&符号,可能会犯迷糊,因为在C语言中这个符号表示了取地址符,但是在C++中它却有着不同的用途,掌握C++的&符号,是提高代码执行效率和增强代码质量的一个很好的办法。引用是C++引入的新语言特性,是C++常用的一个重要内容之一,正确、灵活地使用引用,可以使程序简洁、高效。我在工作中发现,许多人使用它仅仅 是想当然,在某些微妙的场...原创 2020-04-19 20:30:56 · 554 阅读 · 0 评论 -
C++学习(二)之using的用法和C++对C语言的增强内容
1、using的使用1)using声明 》如果出现就近原则,需要避免两个原则同时出现; 2)using编译指令 》如果出现就近原则,优先使用就近原则 》如果有“多个房间打开”,并且存在同名的变量,使用时候需要加作用域区分namespace kingGlory{ in...原创 2020-04-17 23:57:52 · 885 阅读 · 0 评论 -
C++中引用(&)的用法和应用实例
C++中引用(&)的用法和应用实例对于习惯使用C进行开发的朋友们,在看到c++中出现的&符号,可能会犯迷糊,因为在C语言中这个符号表示了取地址符,但是在C++中它却有着不同的用途,掌握C++的&符号,是提高代码执行效率和增强代码质量的一个很好的办法。引用是C++引入的新语言特性,是C++常用的一个重要内...转载 2019-01-26 10:58:11 · 150 阅读 · 0 评论 -
#pragma packj介绍引导
讲解摘要主要copy的度娘,说的比较清楚了,感兴趣可以浏览https://baike.baidu.com/item/%23pragma%20pack/3338249。 程序编译器对结构的存储的特殊处理确实提高CPU存储变量的速度,但是有时候也带来了一些麻烦,我们也屏蔽掉变量默认的对齐方式,自己可以 设定变量的对齐方式。什么是对齐,以及为什么要对齐: 现代计算机中内存空间都是按照byte...原创 2018-06-09 10:12:49 · 156 阅读 · 0 评论 -
【转】static 静态方法的优缺点
1、静态数据成员 在类内数据成员的声明前加上关键字static,该数据成员就是类内的静态数据成员。先举一个静态数据成员的例子。 //Example 5#include <iostream.h>class Myclass{public: Myclass(int a,int b,int c); void GetSum();private: int a,b,c; static int Sum...转载 2018-05-26 16:07:33 · 1582 阅读 · 0 评论 -
Qt c++ 中static静态定义变量函数报错小失误
因为用C++还不够熟练,在报错之后调了好长时间不知道是怎么回事,现在小结一下。在全局类global.h中声名如下:public:实现:编译报错:原因:其实很简单就是,声名的静态变量没有初始化。在cpp文件中对静态变量进行初始化一下就可以了。...原创 2018-05-08 15:07:57 · 2501 阅读 · 0 评论 -
C++中的friend class 用法总结
对于一个没有定义public访问权限的类,能够让其他的类操作它的私有成员往往是有用的。例如你写了一段binary tree的代码,Node是节点类,如果能够让连接多个节点的函数不需要调用public方法就能够访问到Node的私有成员的话,一定是很方便的。Friend Classes(友元类)C++中的friend关键字其实做这样的事情:在一个类中指明其他的类(或者)函数能够直接访问该类中的priv...转载 2018-05-04 10:20:26 · 84967 阅读 · 0 评论