【C++用法的学习心得】教程文章相关的互联网学习教程文章

【C++】C++ const关键字用法总结【代码】

C++ const 关键字用法总结 概述 const是constant的缩写,本意是不变的,不易改变的意思。在C++中是用来修饰内置类型变量,自定义对象,成员函数,返回值,函数参数。 C++ const允许指定一个语义约束,编译器会强制实施这个约束,允许程序员告诉编译器某值是保持不变的。如果在编程的过程中有某个值保持不变,就应该明确使用const,这样可以获得编译器的帮助。 const关键字的作用 1.const关键字定义常量 static const sf::Uint32 DI...

C++语言中std::array的神奇用法总结,你需要知道!【代码】

摘要:在这篇文章里,将从各个角度介绍下std::array的用法,希望能带来一些启发。 td::array是在C++11标准中增加的STL容器,它的设计目的是提供与原生数组类似的功能与性能。也正因此,使得std::array有很多与其他容器不同的特殊之处,比如:std::array的元素是直接存放在实例内部,而不是在堆上分配空间;std::array的大小必须在编译期确定;std::array的构造函数、析构函数和赋值操作符都是编译器隐式声明的……这让很多用惯了st...

C++&QT 的new用法【代码】

c++中使用new给类对象申请内存时,看到的用法有很多,很是疑惑。 经过观察发现了其中的秘密。1 //构造摄像头对象 2 ca = new QCamera(ui->comboBox->currentText().toUtf8(),this); 3 //构造截屏对象 4 cap = new QCameraImageCapture(ca,this);new一个类对象,调用了它的构造函数。所以,括号内的参数就是构造这个对象的参数,根据构造函数的形参列表对号入座即可。

C++11 shared_ptr概念及用法【代码】

基本概念shared_ptr 是C++11提供的一种智能指针类,主要用于消除内存泄漏和悬空指针的问题,方便资源的管理,自动释放没有指针引用的资源. shared_ptr的大小是原始指针的两倍,因为它的内部有一个原始指针指向资源,同时有个指针指向引用计数.所在库 C++11模板库 #include <memory> shared_ptr<T> ptr(new T); // T 可以是 int、char、类等各种类型GNU G++ 的标准库中还没有支持,需使用boost #include <boost/shared_ptr.hpp>内存...

【C++小知识】#define、enum、const的含义与用法

一、#define 含义define是宏定义,编译器不对其进行错误检查,在预编译阶段处理,没有作用域限制属于全局常量,在程序中编译器会对定义的常量名以数值进行替换,且每次替换都分配内存,此方法对于大量常量的情况下会占用较多内存从而导致程序效率。 用法一般用于全局型常量的定义,通常较少使用,在具有较少全局型常量(程序各处都可能用到该常量)时使用。 二、enum 含义enum是枚举常量定义,在编译阶段处理,有作用域限制。枚举...

C++中,get getline gets 用法

1、cin2、cin.get()3、cin.getline()4、getline()5、gets()6、getchar()1、cin>>用法1:最基本,也是最常用的用法,输入一个数字:#include <iostream>using namespace std;main (){int a,b;cin>>a>>b;cout<<a+b<<endl;}输入:2[回车]3[回车]输出:5用法2:接受一个字符串,遇“空格”、“TAB”、“回车”都结束#include <iostream>using namespace std;main (){char a[20];cin>>a;cout<<a<<endl;}输入:jkljkljkl输出:jkljkljkl输...

c++优先队列(priority_queue)用法详解【代码】

既然是队列那么先要包含头文件#include <queue>, 他和queue不同的就在于我们可以自定义其中数据的优先级, 让优先级高的排在队列前面,优先出队 优先队列具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序,它本质是一个堆实现的和队列基本操作相同:top 访问队头元素empty 队列是否为空size 返回队列内元素个数push 插入元素到队尾 (并排序)emplace 原地构造一个元素并插入队列pop 弹出队头元素swap 交换内容 定...

c++的const的用法

1、修饰变量,即常量,初始化后不能改变 2、修饰指针,表示常指针 3、修饰指针指向的变量,表示变量不能改变 4、修饰引用的变量,表示引用绑定的变量不能改变 5、修饰函数的参数,表示函数的内部此量不能改变 6、修饰成员函数,表示常函数,不能修改成员变量 7、修饰函数返回值,表示不能作为左值

C++ Beep函数用法【图】

C++有很多API函数,其中有一个函数叫Beep,他的功能是发出蜂鸣,前提是有扬声器,利用Beep函数可以做出一些用蜂鸣弹出歌曲的程序,下面就来做一个两只老虎的播放程序。 这是两只老虎的简谱,下面来讲解代码。 首先我们#define一下用到的音符 #define do 523 #define re 578 #define mi 659 #define fa 698 #define so 784 #define la 880 #define si 990 #define do1 1046 #define qdo 262 #define qsi 494 好了这就是用到的音符...

C++中getline函数的用法【代码】

总结:cin 会忽略前导的空格字符,且会以中间的空格字符为分界;getline(cin, inputLine)函数可读取整行,包括前导和嵌入的空格,并将其存储在字符串对象中。 虽然可以使用 cin 和 >> 运算符来输入字符串,但它可能会导致一些问题。 当 cin 读取数据时,它会传递并忽略前导的空格字符(空格、制表符或换行符)。一旦它接触到第一个非空格字符即开始阅读,当它读取到下一个空白字符时,它将停止读取。以下面的语句为例cin >> name...

C/C++ typedef用法

原文来源:https://blog.csdn.net/superhoy/article/details/53504472 第一、四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如:char* pa, pb; // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针, // 和一个字符变量; 以下则可行:typedef char* PCHAR; // 一般用大写PCHAR pa, pb; // 可行,同时声明了两个指向字符变量的指针 虽然:char *pa, *pb;也可行,...

C++之 ostream详细用法【代码】【图】

前言 在 C++中,ostream表示输出流,英文”output stream“的简称。在 C++中常见的输出流对象就是标准输出流cout,很少自定义ostream的对象,更多的是直接使用cout。那么 ostream 有什么用呢,来看一个场景:1 class CPoint 2 { 3 public: 4 CPoint(int x_,int y_):x(x_),y(y_){} 5 int x,y; 6 };举个例子...这里定义了一个简单的类CPoint,如果我们实例化该类过后,想要打印对象的值:1 CPoint point(1,2); 2 cout << poi...

【C++】set的常用用法总结【代码】【图】

一、概念 set是STL中一种标准关联容器。它底层使用平衡的搜索树——红黑树实现,插入删除操作时仅仅需要指针操作节点即可完成,不涉及到内存移动和拷贝,所以效率比较高。 set顾名思义是“集合”的意思,在set中元素都是唯一的,而且默认情况下会对元素自动进行升序排列,支持集合的交(set_intersection),差(set_difference) 并(set_union),对称差(set_symmetric_difference) 等一些集合上的操作,如果需要集合中的元素允许重复那...

C++ STL之priority_queue的基本用法【代码】【图】

1.基本介绍优先队列priority_queue具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序2.基本操作 s.top() //访问队头元素 s.size() //队中元素个数 s.empty() //队是否为空 s.push() //插入元素并排序 s.pop() //弹出队头元素注意: 无s.back()操作 //升序队列 priority_queue <int,vector<int>,greater<int> > q; //降序队列 priority_queue <int,vector<int>,less<int> >q;3.示例 #include<bit...

C++ list, vector, map, set区别与用法比较

List封装了链表,Vector封装了数组,List和Vector最主要的区别在于Vector使用连续内存存储,它支持[ ]运算符([ ]下标运算符,可以获取数组中单独的元素),而List是以链表的形式实现的,不支持[ ]。 Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素的速度很慢,在尾部插入速度很快。List对于随机访问速度慢的多,因为可能要遍历整个链表才能做到,但是对于插入就快的多了,不需要拷贝和移动数据,只需要改变指针的...