【c++中#pragma用法】教程文章相关的互联网学习教程文章

C++ ofstream和ifstream详细用法

原文出自【比特网】,转载请保留原文链接:http://soft.chinabyte.com/database/460/11433960.sh https://www.cnblogs.com/batman425/p/3179520.html [导读] ofstream是从内存到硬盘,ifstream是从硬盘到内存,其实所谓的流缓冲就是内存空间 在C++中,有一个stream这个类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O. stream这个类有两个重要的运算符:  1、插入器(<<)  向流输出数据。比如...

C++中pair的用法【代码】

C++中pair的用法 一、概述 pair是将2个数据组合成一个数据,当需要这样的需求时就可以使用pair,如STL中的map就是将key和value放在一起来保存。另一个应用是,当一个函数需要返回2个数据的时候,可以选择pair。 pair的实现是一种结构体,主要的两个成员变量是first, second 因为是使用struct不是class,所以可以直接使用pair的成员变量。 二、定义pair<T1, T2> p1; //创建一个空的pair对象(使用默认构造),它的两个...

C++ STL容器——stack用法介绍【代码】

stack是一种容器适配器,专门设计用于在LIFO上下文中操作(后进先出),其中元素仅从容器的一端插入和删除。 容器适配器,而不是一种容器。 它是容器适配器是指,只要支持一系列方法的容器(empty, size, back, push_back, pop_back),都能作为stack使用。 stack 有可能实际上是一个 vector, deque 或 list. 如果没有特殊指明,将使用 deque作为stack的实际容器。 成员函数 empty() 测试栈是否为空,为空返回true,否则返回false。 ...

c++ 中STL中find() find_if() remove() remove_if()的用法【代码】

c++ 中STL中find() find_if() remove() remove_if()的用法 c++官网资料 介绍c++官网以及参考资料,相当于Linux下的man手册。 http://www.cplusplus.com/reference/,可以直接访问该网站进行资料的查阅,非常详细。 STL中find() find_if() remove() remove_if() 用法实例 #include <iostream> #include <list> #include <stdio.h> #include <algorithm>typedef struct Test {int test1;float test2;bool operator == (const Test &r...

C++通过jsoncpp类库读写JSON文件-json用法详解【代码】【图】

介绍: JSON 是常用的数据的一种格式,各个语言或多或少都会用的JSON格式。 JSON是一个轻量级的数据定义格式,比起XML易学易用,而扩展功能不比XML差多少,用之进行数据交换是一个很好的选择。JSON的全称为:JavaScript Object Notation ,顾名思义,JSON是用于标记javascript对象的。 编译方法: 使用Jsoncpp生成的lib文件: 首先下载Jsoncpp源码文件,用cmake编译主目录中的CMakeLists.txt,之后打开sln文件,进行编译,会在src\l...

关于C++中的cin用法【代码】【图】

输入原理: 程序的输入都建有一个缓冲区,即输入缓冲区。一次输入过程是这样的,当一次键盘输入结束时会将输入的数据存入输入缓冲区,而cin函数直接从输入缓冲区中取数据。正因为cin函数是直接从缓冲区取数据的,所以有时候当缓冲区中有残留数据时,cin函数会直接取得这些残留数据而不会请求键盘输入 #1: #include <iostream>2 using namespace std;3 int main()4 {5 char str[8];6 cin.getline(str, 5);7 cout << st...

c++ 智能指针用法详解

c++ 智能指针用法详解转自博客:http://www.cnblogs.com/TenosDoIt/p/3456704.html ?本文介绍c++里面的四个智能指针: auto_ptr, shared_ptr, weak_ptr, unique_ptr 其中后三个是c++11支持,并且第一个已经被c++11弃用。 为什么要使用智能指针:我们知道c++的内存管理是让很多人头疼的事,当我们写一个new语句时,一般就会立即把delete语句直接也写了,但是我们不能避免程序还未执行到delete时就跳转了或者在函数中没有执行到最后的...

C++/C中的struct和typedef struct用法和区别

struct和typedef struct 分三块来讲述:  1 首先://注意在C和C++里不同    在C中定义一个结构体类型要用typedef:    typedef struct Student    {    int a;    }Stu;    于是在声明变量的时候就可:Stu stu1;(如果没有typedef就必须用struct Student stu1;来声明)    这里的Stu实际上就是struct Student的别名。Stu==struct Student    另外这里也可以不写Student(于是也不能struct Student ...

C++中全排列函数next_permutation用法【代码】【图】

最近做了TjuOj上关于全排列的几个题,室友告诉了一个非常好用的函数,谷歌之,整理如下: next_permutation函数 组合数学中经常用到排列,这里介绍一个计算序列全排列的函数:next_permutation(start,end),和prev_permutation(start,end)。这两个函数作用是一样的,区别就在于前者求的是当前排列的下一个排列,后一个求的是当前排列的上一个排列。至于这里的“前一个”和“后一个”,我们可以把它理解为序列的字典序的前...

C++中STL用法总结【转】【图】

(转自:https://blog.csdn.net/piaoxuezhong/article/details/54348787?utm_source=blogxgwz8) 1.1 什么是STL? STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。它被容纳于C++标准程序库(C++ Standard Library)中,是ANSI/ISO C++标准中最新的也是极具革命性的一部分。该库包含了诸多在计算机科学领域里所常用的基本数据结构和基本算法。为广大C++程序员们提供了一个可扩展的应用框...

C++中auto的用法,说明的是变量的寿命

C语言提供了存储说明符auto,register,extern,static说明的四种存储类别。四种存储类别说明符有两种存储期:自动存储期和静态存储期,其中auto和register的存储期为 自动存储期,具有自动存储期的变量在进入声明该变量的程序块是被建立,它在该程序块活动是存在,退出该程序块时撤销。

C++ pair对组的用法

C++中的pair对组的本质是一个struct类型的模板,所以它具有struct的特征,就是可以把不同的数据据类型合成一个结构体类型,不同的是pair只能合成两种数据类型。 下面是对组的用法,用程序注释解释:#include <iostream> #include <string> #include <map> #include <cstdlib> using namespace std;int main() {//初始化对组方法一,使用构造函数/* pair构造函数的定义为_CONST_FUN pair(const _Ty1& _Val1, const _Ty2& _Val2): fi...

C++11中vector的emplace_back用法及输入输出操作符的重载

#include <vector> #include <iostream> #include <string> using namespace std;struct A{int x;double y;string z;A(int _x=0,double _y=0,string _z=""):x(_x),y(_y),z(_z){}A(const A &t):x(t.x),y(t.y),z(t.z){}//copy constructorfriend ostream & operator<<(ostream &out, A &obj){out<<"x:"<<obj.x<<", y:"<<obj.y<<", z="<<obj.z<<endl;return out;}friend istream & operator >> (istream &in, A &obj){in>>obj.x>>obj....

C++ List的用法(转载)

Lists将元素按顺序储存在链表中. 与 向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢.assign() 给list赋值 back() 返回最后一个元素 begin() 返回指向第一个元素的迭代器 clear() 删除所有元素 empty() 如果list是空的则返回true end() 返回末尾的迭代器 erase() 删除一个元素 front() 返回第一个元素 get_allocator() 返回list的配置器 insert() 插入一个元素到list中 max_size() 返回list能容纳的最...

C++ stl库bind函数模板用法的注意事项【代码】

类成员函数 bind可以包装类成员函数,创建函数对象。其中有接收类类型和类指针类型的版本,如: #include <iostream> #include <memory> #include <functional> using namespace std;struct TesSt {TesSt(){}void update(const string &in_str) {str = in_str;cout << "str:" << str << endl;;}string str; };TesSt g_test_st;int main () {auto func1 = bind(&TesSt::update, &g_test_st, "hihi"); auto func2 = bind(TesSt::upda...