ICode9

精准搜索请尝试: 精确搜索
  • C++ 多线程的错误和如何避免(4)2022-05-17 12:02:57

    对共享的资源或者数据做加锁处理 在多线程的环境下,有时需要多个线程对同一个资源或者数据进行操作,如果没有加锁,容易出现未定义的行为。 比如: #include <iostream> #include <string> #include <thread> #include <mutex> using namespace std; std::mutex mu; void CallHome(s

  • C++基础03-类的组合-类与对象2022-05-17 11:02:24

    类与对象-类的组合 | C++基础 组合的概念 类中的成员是另一个类的对象;可以在已有抽象的基础上实现更复杂的抽象。 类组合的构造函数设计 原则:不仅要负责对本类中的基础类型成员数据初始化,也要对对象成员初始化。 声明形式: 类名::类名(对象成员所需的形参,本类成员形参) :对象1

  • C++基础00-入门知识补充2022-05-17 11:00:36

    基础知识 | C++基础 本页是对C++相关知识在 类与对象 前的汇总,便于回忆,将知识盲区记录如下 数据输入输出 流:数据从一个对象到另一个对象的流动,使用前要被建立,使用后被删除 提取操作:从流中获取数据的操作 插入操作:向流中添加数据的操作 常见的I/O流类库操纵符: 操纵符名 含义

  • 单链表 插入,删除 C/C++2022-05-17 00:01:54

    #include<iostream> using namespace std; typedef struct Link_Node{ int data; Link_Node* next;} ; // 单链表的插i入操作,插入到第K个元素后面,link_list 是单链表的首指针// 有可能List,int insert_data(Link_Node *link_list,int k,int data){ Link_Node *p_node = link_lis

  • C++中NaN异常值捕捉方法2022-05-16 23:35:11

    问题 debug代码发现某个值偶发变为-NaN需要定位具体位置。 尝试 基本可以判断是除0引起,想当然尝试了val < -10000的条件断点,无法捕捉。 解决 查阅文献 NaN is designed to propagate through all calculations, infecting them like a virus, so if somewhere in your deep, comp

  • Random Events C++2022-05-16 23:33:58

    Random Events比赛题目  题目统计 全部提交 时间限制:C/C++ 2000MS,其他语言 4000MS内存限制:C/C++ 256MB,其他语言 512MB 描述   Ron is a happy owner of a permutation a of length n. A permutation of length n is an array consisting of n distinct integers from

  • 抢分制C++2022-05-16 23:31:09

    抢分制比赛题目  题目统计 全部提交 时间限制:C/C++ 1000MS,其他语言 2000MS内存限制:C/C++ 256MB,其他语言 512MB 描述   xiaoliu在玩一个抢分制的游戏,这个游戏规则如下:先给1个含n个正整数的数组a,每次xiaoliu可以选择删除一个数a[i],将数组中的等于a[i]+1和a[i]-1的元素都删除并

  • C++迭代器失效的几种情况2022-05-16 23:01:30

    1. 对于序列型容器:vector, deque 删除当前元素:从当前位置到之后全部位置迭代器失效;(可以用 it=res.erase(it); 来实现迭代器的更新追踪) 添加一个元素:当添加元素后,导致了容器扩容的操作,则全部迭代器失效;(可以用 it=res.push(it);) 插入一个元素:当添加的元素在首尾位置以外,所有迭代器

  • C++ do{ } while(0)2022-05-16 15:03:50

    整理浏览器标签 看到之前收藏的一个 do{ } while(0) 使用的好处,今天再看感觉这样用依然很妙。使用 do{ } while(0)  主要目的其实是为了利用循环里面可以break ,很优雅的实现跳过一些代码的执行示例:do{ 语句1; 语句2; if(条件){ 语句3; break; }

  • linux bash alias2022-05-16 14:00:30

    sudo vim ~/.bashrc # alias for g++ support C++ standard 11, 14, 17, 20 alias g++11='g++ -std=c++11' alias g++14='g++ -std=c++14' alias g++17='g++ -std=c++17' alias g++20='g++ -std=c++2a' g++20 -o a test.cpp 修改完成后

  • C语言 / C++基础面试知识大集合2022-05-16 11:04:32

    https://mp.weixin.qq.com/s/IJOouHalSvuWjqeUFqlanQ this 指针 this 指针是一个隐含于每一个非静态成员函数中的特殊指针。它指向调用该成员函数的那个对象。 当对一个对象调用成员函数时,编译程序先将对象的地址赋给 this 指针,然后调用成员函数,每次成员函数存取数据成员时,都隐式

  • c++primer智能指针部分2022-05-15 22:34:59

    1 内存篇 2 静态内存、栈内存、动态内存 3 静态内存:用来保存局部static对象,类static数据成员、以及定义在 任何函数外的变量 4 栈内存:用来保存定义在函数内的非static对象。 5 动态内存:new出来的内存 6 7 分配在静态内存和栈内存的对象由编译器自动创建和销毁,

  • 磊磊零基础打卡算法:day12 c++静态单链表2022-05-15 18:01:33

    5.15 静态单链表 简单的方法: 成员变量: int e[N],//存放节点的值 ne[N],存放结点的next head,头结点指针 idx;变化的指针 初始化: void init() { head = -1;//头结点最初指向-1 idx = 0;//初始的位移指针是0; } //初始化链表 在头部位置添加: void add_to_head

  • 植物大战僵尸无限阳光,无冷缩2022-05-15 14:04:03

    C++植物大战僵尸无限阳光,无冷缩 免责声明:本代码只允许对C++编程研究,切勿用在其他非法用途 先上效果: 适合的游戏版本 植物大战僵尸年度版(来自同学的优盘emmmmm) 下载:游戏 下载:外挂 代码部分 环境visual studio 2019 编译直接用 #include <iostream> #include <windows.h> #include

  • C++编写通讯录控制台版2022-05-15 14:02:07

    C++编写通讯录控制台版 效果演示: 下载:程序 主要用到的知识点: 结构体 结构体的创建以及使用,利用数组创建多个结构体对象,在本程序中,利用宏define MAX 1000 来制约了数组的大小,从而达到控制通讯录大小的目的。 指针 AddBooks abs 本程序中用实例化了对象,并在函数中传入该对象的指针

  • C++-抢气球 解题思路2022-05-14 22:33:36

    【Horn Studio】编程专栏: 抢气球  解题思路 题目 题目描述 A教室的墙上挂满了五颜六色的气球,小朋友们都非常喜欢。刚一下课,小朋友们就打算去抢这些气球。每个气球在墙上都有一定的高度,只有当小朋友跳起来时,手能够到的高度大于等于气球的高度,小朋友才能摘到这个气球。为了公平起见

  • C++-跳石头 解题思路2022-05-14 22:31:07

    【Horn Studio】编程专栏: 抢气球  解题思路 题目 题目描述 一年一度的“跳石头”比赛又要开始了!这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有NN块岩石(不含起点和终点的岩石)。在比赛过程中,选手

  • C++20高级编程 第五版 电子书 pdf2022-05-14 17:02:36

    Gregoire M. - Professional C++, 5th edition   关注公众号:红宸笑。 回复:电子书 即可  

  • 01 | C++ 资源管理:堆、栈、RAII2022-05-14 16:01:34

    一、基本概念 堆(heap),在内存管理的语境下,指的是动态分配内存的区域,与数据结构里的堆不是一个概念。这里的内存,被分配之后需要手工释放,否则,就会造成内存泄漏。 C++ 标准里使用 new 和 delete 分配和释放内存的区域叫自由存储区(free store),这是堆的一个子集: new 和 delete 操作

  • 面向对象程序设计2022-05-14 15:01:05

    C++允许多继承,而Java不允许多继承                                                  

  • C++学习笔记(2)2022-05-14 12:02:08

    C++学习笔记(2)   vector的四种遍历方法测试 //迭代器测试iterator void myPrint(int a) { cout <<&a<<" = " << a << endl; } void test6() { vector<int> v; v.push_back(11); v.push_back(22); v.push_back(33); v.push_back(44); v.pus

  • JFrame(用C++11特性重构系列——optional的实现)2022-05-14 10:32:02

    1 #pragma once 2 #include <type_traits> 3 #include <utility> 4 #include <stdexcept> 5 6 template<typename T> 7 class Optional 8 { 9 using data_t = typename std::aligned_storage<sizeof(T), std::alignment_of

  • BUAA_C++2022-05-14 10:03:22

    CPP A better C 重载 同名函数不同参数 //overloading,支持重载,同名函数,不同参数 void print(int i){} void print(char *str){} 但是,同名同参不同返回值是不允许的 默认参数 void fun(int i, int j, int k=3){} //注意不能写成 void fun(int i, int j=3, int k) 一旦直接给参数,

  • JFrame(用C++11特性重构系列——开篇)2022-05-14 08:31:33

    目前我学习到的很多框架都是用 c++98 写的,可能因为这些框架写成得比较早,因此没有注意 c++11的应用,但是时至今日,在 c++20 都快要问世之际,怎能还停留在 C++98 死于安乐呢? C++ 11 最强大的新特性就是她对于模板的加强,同时也是最复杂的特性(因为模板本来就复杂),但是模板的用武之地就是在

  • C++ mysql2022-05-14 02:32:13

    1.Install C++ connector sudo apt install libmysqlcppconn-dev 2. #include <iostream> #include <cppconn/driver.h> #include <cppconn/resultset.h> #include <cppconn/statement.h> #include <cppconn/exception.h> using namespace

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有