![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
Victor_psl
这个作者很懒,什么都没留下…
展开
-
windows下安装CMake
1. 安装2.编译失败问题解决原创 2023-02-09 16:37:59 · 362 阅读 · 0 评论 -
c++编程规范
C++ 编码规范整理原创 2023-02-09 09:05:46 · 211 阅读 · 0 评论 -
Qt工具下载
这里写自定义目录标题Qt下载地址添加链接描述原创 2021-12-26 00:02:39 · 283 阅读 · 0 评论 -
RAII详解
什么是RAII?RAII是Resource Acquisition Is Initialization(wiki上面翻译成 “资源获取就是初始化”)的简称,是C++语言的一种管理资源、避免泄漏的惯用法。利用的就是C++构造的对象最终会被销毁的原则。RAII的做法是使用一个对象,在其构造时获取对应的资源,在对象生命期内控制对资源的访问,使之始终保持有效,最后在对象析构的时候,释放构造时获取的资源。为什么要使用RAII?上面说到RAII是用来管理资源、避免资源泄漏的方法。那么,用了这么久了,也写了这转载 2020-08-30 09:51:47 · 1635 阅读 · 0 评论 -
C++RTTI详解
RTTI是”Runtime Type Information”的缩写,意思是运行时类型信息,它提供了运行时确定对象类型的方法。RTTI并不是什么新的东西,很早就有了这个技术,但是,在实际应用中使用的比较少而已。而我这里就是对RTTI进行总结,今天我没有用到,并不代表这个东西没用。学无止境,先从typeid函数开始讲起。typeid函数typeid的主要作用就是让用户知道当前的变量是什么类型的,对于内置数据类型以及自定义数据类型都生效,比如以下代码:? 1 2 3转载 2020-08-30 09:23:40 · 321 阅读 · 0 评论 -
c++11新标准
说起C++语言,它现在被公认为是在各种编程语言中最难学的语言之一,它的语法知识点之广泛,细节内容之多,学习难度之大,时间周期之长,都使得人们对这门语言“敬而远之”。然而C++语言又具有不可替代的巨大优势。主要的优势有以下几点,首先C++是一个严谨,精确的语言。它的标准定义非常明确,语言结构层次分明,清晰顺畅,具有优秀的编程语言应该具有的品质。其次,C++语言支持对底层的操作,这是又一大优势。支持底层操作意味着编程的效率将显著提升。C++语言在继承c语言的基础上,改进了自己对底层的支持,这令其更加有吸转载 2020-08-12 08:20:08 · 4027 阅读 · 0 评论 -
for(auto i : arr)
这里c++11里面的新标准,也是遍历的一种方式,类似于Java里面的for each()#include<iostream>#include<vector>using namespace std;int main() { int a[] = { 1,2,3,5,2,0 }; vector<int>counts(a,a+6); for (auto count : counts) cout<< count<< " "; .原创 2020-07-31 17:04:55 · 1331 阅读 · 0 评论 -
c++ new和operator new
new运算符和operator new()new:指我们在C++里通常用到的运算符,比如A* a = new A; 对于new来说,有new和::new之分,前者位于stdoperator new():指对new的重载形式,它是一个函数,并不是运算符。对于operator new来说,分为全局重载和类重载,全局重载是void* ::operator new(size_t size),在类中重载形式 void* A::operator new(size_t size)。还要注意的是这里的operat.转载 2020-07-30 11:06:46 · 368 阅读 · 1 评论 -
c++oop思想
oop:面向对象编程(object oriented programming),是一种计算机编程架构。对象是由数据和容许的操作组成的封装体,和客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而继承性是具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识理解、刻画客观世界和设计、构造相应的软件系统。属性和方法的集合就形成了类,类是面向对象编程的核心和基础,类在实例化后就是对象。对象的产生:一:是以原型对象为基础转载 2020-07-23 17:03:18 · 322 阅读 · 0 评论 -
c++sprintf()函数
sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。sprintf 是个变参函数,定义如下:int sprintf( char *buffer, const char *format [, argument] ... );除了前两个参数类型固定外,后面可以接任意多个参数。而它的精华,显然就在第二个参数:(1)格式化字符串上。printf 和sprintf 都使用格式化字...原创 2020-07-20 22:16:13 · 2416 阅读 · 0 评论 -
c++求第k个大的数字
因为有序的数组直接用下标返回就可以了,所以这里对无序的数组求值,采用二分法来求第k大的数字,当然第k小的也是一样的。原创 2020-07-17 00:34:28 · 1237 阅读 · 0 评论 -
string与char*
c++的string库,解决了很多字符串问题,字符串处理的操作基本包括完了,这里就不说有哪些库函数了。这里我就说说输入为string,输出为const char*的问题。string库用法总结链接:https://blog.csdn.net/liitdar/article/details/80498634string库大全:https://blog.csdn.net/u013046610/article/details/72674185?utm_medium=distribute.pc_releva原创 2020-07-16 21:26:03 · 168 阅读 · 0 评论 -
如何判断大小端
如图所示:代码测试:int check_sys(int a){ int* p = &a; if (*p == 12345678) return 0; else return 1;}int main(){ int a = 0x12345678; int re = check_sys(a); if (a == 0) { cout << "big" << ...原创 2020-07-16 18:53:00 · 147 阅读 · 0 评论 -
c++之const解析
之前一直在学习C/C++,关于const的使用,这里出现一点,那里出现一点。知识用时方恨少,这一段时间正好各种笔试题,其中关于const的用法也是层出不穷,所以疲于在书本上各种翻,这里汇总一下,加深自己的印象的同时,也方便以后查阅和学习。菜鸟一个,若有错误,望指正! const关键字 常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。不管出现在任何上下文都是为这个目的而服务的。 const使用方法 定义const对象 co...原创 2020-07-10 15:50:16 · 205 阅读 · 1 评论 -
什么是C++初始化列表
为什么要有初始化列表,初始化列表的作用什么,那些情况下必须要用初始化列表,这应该是令c++初学者头疼的问题了。下面就简单介绍一下首先什么初始化列表呢,我们先理解一下这个概念,c++对象的创建首先是开辟内存,然后调用构造函数,这里构造函数就分为隐式初始化和显示初始化,隐式初始化就没有初始化列表,显示就有。我们知道对象...原创 2020-05-15 10:52:01 · 1592 阅读 · 0 评论 -
C++的cin如何输入
cin输入字符串cin cin.get() cin.getline() gets getchar() gcount get getline ignore peek read readsome putback unget 编写acm题目时遇到一个问题,在输入string类型数据时,出现“错误 1 error C2679: 二进制“>>”: 没有找到接受“s...转载 2020-04-30 03:37:03 · 556 阅读 · 0 评论 -
c++两个队列实现栈和两个栈实现队列
//两个队列实现栈/*与用两个栈实现队列,思想一样,其实,这样要麻烦一点(栈实现队列时,只要把sa栈(此时为倒叙)的内容出栈,插入到sb(此时为正序),删除时一个一个来),因为在删除操作是总要出队列,入队列,直到剩余一个元素,即队头,删除*///这里用了模板template<class T>//类模板class Stack{public: void pus...原创 2020-04-29 02:35:04 · 383 阅读 · 0 评论 -
c/c++区别
一、面向过程语言和面向对象语言我们都知道C语言是面向过程语言,而C++是面向对象语言,说C和C++的区别,也就是在比较面向过程和面向对象的区别。C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算...转载 2020-03-17 02:06:43 · 229 阅读 · 0 评论 -
#include<stack>的使用
c++ stl栈stack的头文件为:#includestack S;//声明一个对象S.empty();//栈空返回true 否则falseint x=S.size();//返回栈中元素个数于xS.pop();//移除栈顶元素S.push(x);将x置于栈顶x=S.top();返回栈顶元素...转载 2020-03-15 02:54:50 · 538 阅读 · 0 评论 -
堆和栈
堆和栈的区别:作为开发人员,面对堆和栈这两个概念时,在不同的情况下,有不同的含义。一般情况下,有这两种含义:1)在内讲,作为内存的管理方式。2)在数据结构下,堆和栈作为两种常用的数据结构。栈简介:栈由操作系统分配,用来存储局部变量,函数参数等,其操作方式类似与操作系统中的栈。变量根据先后顺序压入栈中,并且相邻的变量之间不会有其他变量,栈的地址由高到低,后定义的变量地址小于先定义的变量地址...原创 2020-03-06 03:10:02 · 216 阅读 · 0 评论 -
c++常见问题解析
刚上手c++,很多问题不明白,因此先来解决基本的定义规则,也好有个基本的知识概念。1.为什么引入this指针?c++编译器要把c++语言先翻译成c语言,在c语言中没有类和对象,没有成员函数。只有结构变量,全局函数。因此,成员函数被转化成全局函数,类被转换成结构体,对象被转化成结构变量。但是通过对象所调用的函数语句无法表示。这就引入了this指针。在c++中,每个对象都能通过this指针...原创 2020-01-31 23:59:49 · 351 阅读 · 0 评论 -
c/c++高质量编程
第一章 文件结构1.1为了防止头文件的重复引用,应当用ifndef/define/endif 结构产生预处理快。 eg:#ifndef FILE_H//防止file.h被重复引用#define FILE_H……#endif1.2#include<filename.h>引用标准库的头文件,编辑器将从标准库开始搜索。1.3#include"fi...原创 2020-01-22 02:44:44 · 1079 阅读 · 0 评论