• 2024-06-30item7 Moving to Modern C++**
    第3章移步现代C++CHAPTER3MovingtoModernC++说起知名的特性,C++11/14有一大堆可以吹的东西,auto,智能指针(smartpointer),移动语义(movesemantics),lambda,并发(concurrency)——每个都是如此的重要,这章将覆盖这些内容。掌握这些特性是必要的,要想成为高效率的现代C++程序员需
  • 2024-06-21[Effective Modern C++] 条款18笔记
    条款18中的完整代码:点击查看代码#include<iostream>#include<memory>#include<string>//假设基础的Investment类和Stock类classInvestment{public:virtual~Investment()=default;virtualvoiddisplay()const=0;};//其它类类似,略classSto
  • 2024-06-18The Charm and Influence of Mathematics
    RespectedTeachersandDearClassmates:Helloeveryone!Today,thetwoofuswilljoinhandstoleadeveryoneinexploringanancientandinfinitelycharming(令人着迷的;可爱的)field-mathematics.Mathematics,thispreciseandwonderfullanguage,notonly
  • 2024-06-12Unit 6 - Disappearing Through The Skylight
    Unit6-DisappearingThroughTheSkylightDisappearingThroughTheSkylightOsborneBennettHardisonJr.Scienceiscommittedtotheuniversal.Asignofthisisthatthemoresuccessfulasciencebecomes,thebroadertheagreementaboutitsbasicconcept
  • 2024-05-27Modern Pascal is Still in the Race (Modern Pascal 仍在竞赛中)
    ModernPascal仍在竞赛中作者:ArnaudBouchez,2022年11月26日。永久链接Pascal编程博客集合跨平台数据库DelphiFPC垃圾回收器泛型Go优秀实践元编程mORMotmORMot2性能RTTIRust最近在Lazarus/FPC论坛上的一项民意调查突显了一个事实:Pascal程序员比其他大多数
  • 2024-05-26Effective ModernC++条款42:考虑使用置入代替插入
    更多C++学习笔记,关注wx公众号:cpp读书笔记Item42:Consideremplacementinsteadofinsertion如果你拥有一个容器,例如放着std::string,那么当你通过插入(insertion)函数(例如insert,push_front,push_back,或者对于std::forward_list来说是insert_after)添加新元素时,你传入的元
  • 2024-02-04SharePoint Online Modern Script Editor WebPart
    前言最近在使用SharePointOnline的时候,发现一个很好用的WebPart,大家有兴趣可以试一试。正文这个WebPart有点类似以前的内容编辑器,使用起来非常简单,编辑页面直接插入就可以了,如下图:点击Editormarkup,在EditHTMLCode里面可以添加HTML,如下图:当然,这
  • 2023-11-27Modern C++ Starter Kits Share
    初入C++搬砖,在团队中开发实际上很少亲自从零开始搭建C++的完整项目,99%时候都是使用基础架构团队或者CI/CD团队搭建好的框架。这里分享几个配置C++项目的模版,它们一般会涉及三方库管理、格式校准、单元测试、静态检查、Sanitizer配置、CI/CD配置等方面,内容比较完善。BuildSyst
  • 2023-10-22Modern C++ Overview综览
    ##PartI:Language(第一篇:语言)-大局观——简直像个新语言给出一个完整实例,展示(几乎)所有新特性的样貌,让学员从真实代码中一次性窥得(几乎)全豹,得知即将面对的新知和挑战。-auto,typededuction型别/型态推导是ModernC++至关重要的某种基础;这一节为后头诸多特性打好基础。-
  • 2023-09-27Effective Modern C++
     作者针对C++11/14而写的 EffectiveModernC++简介-EffectiveModernC++(cntransgroup.github.io)  一篇文章学完EffectiveModernC++:条款&实践-知乎(zhihu.com) 
  • 2023-09-21活动报名 | Modern Data Stack Meetup 北京首站启动!与三大开源社区共同探索现代数据栈的最佳实践
    相信对于“现代数据堆栈(ModernDataStack)”这个名词,大家早已不陌生。但若问及其真正含义,往往又很难快速、准确地阐明。事实上,对于我们的团队组织而言,吃透并灵活应用“现代数据栈”所能带来的价值与收益,将会是深远且符合发展趋势的。Q1:什么是现代数据堆栈?现代数据堆栈的流行
  • 2023-08-27P7414 [USACO21FEB] Modern Art 3 G 题解
    思路考虑区间DP。设\(f_{i,j}\)表示要刷到\([i,j]\)这一段的目标需要的最小次数。对于\(f_{i,j}\),如果\(color_i\)与\(color_j\)相等,那么再子区间合并的时候就可以少刷一次,即\(f_{i,j}=\min\limits_{k=i}^{j-1}f_{i,k}+f_{k+1,j}-1\)。否则\(f
  • 2023-08-09C - Modern Art 3 G
    C-ModernArt3G题意有一种画法:每次可以填一段区间,把一段区间填成相同的颜色,给你成品,问最少填了多少次。思路区间dp,对于一段区间,显然会有一条分割线,把画作分成两边,如果没有,那就没意义了,考虑DFS,对于一个区间,枚举分割线,我们发现必然能够找到一条分割线使得被截断的颜色的条
  • 2023-08-04《Modern C++ Design》之上篇
    如下内容是在看侯捷老师翻译的《ModernC++Design》书籍时,整理的code和摘要,用于不断地温故知新。第一章1.运用TemplateTemplate参数实作PolicyClassestemplate<template<classCreated>classCreationPolicy>//template<template<class>classCreationPolicy
  • 2023-07-24Code-OpenSource-JSON for Modern C++ v3.10.5
    Code-OpenSource-JSONforModernC++v3.10.5github.com/nlohmann/jsonhttps://json.nlohmann.me/home/exceptions/#version-historyhttps://json.nlohmann.me/api/macros/json_diagnostics/#extended-diagnostic-messages#defineJSON_DIAGNOSTICS1输出详细信息
  • 2023-07-17modern standby BIOS
    什么是ModernStandbyBIOS简介ModernStandbyBIOS是一种新一代的计算机BIOS技术,它基于微软的ModernStandby技术。传统的ACPI技术使计算机进入睡眠模式时,CPU会停止运行,只有少量硬件设备处于待机状态。而ModernStandby技术通过使系统保持一定程度的活动,提供更快的从睡眠模式唤
  • 2023-07-13现代C++(Modern C++)基本用法实践:一、类型推导
    概述类型推导主要是依赖auto关键字和decltype关键字/运算符实现的,具体用法参考下面的例子。二者特点:auto用于声明时推导遍历decltype用于推导各种表达式,decltype(var)中var也是一种称为变量表达式的表达式二者都是在编译时进行推导。引用类型推断:decltype推断变量类型时
  • 2023-07-13现代C++(Modern C++)基本用法实践:五、智能指针(Smart Pointers)
    概述c++效率较高的一个原因是我们可以自己定制策略手动申请和释放内存,当然,也伴随着开发效率降低和内存泄漏的风险。为了减少手动管理内存带来的困扰,c++提出了智能指针,可以帮助我们进行内存管理,有三种:std::unique_ptr是一种独占所有权的智能指针,它不允许多个指针指向同一个对
  • 2023-07-13现代C++(Modern C++)基本用法实践:四、模板
    概述C++的模板是泛型编程思想的一种实现。C++是强类型语言,处处强调类型。同样的加法运算,int和float的加法运算需定义两个函数(重载),而使用模板则可以只用一个函数(见下面示例)。这类似我们面向对象所说的多态(定义加法运算,各个类型有不同的实现),所以是所谓静多态的一种实现方式,不同的
  • 2023-07-13现代C++(Modern C++)基本用法实践:三、移动语义
    概述移动移动(move)语义C++引入了一种新的内存优化,以避免不必要的拷贝。在构造或者赋值的时候,如果实参是右值(或者左值由std::move转换成右值),便会匹配移动语义的函数调用如下述举例的Str(Str&&obj)。移动语义的本质是将资源(内存/句柄)转移给另一个对象,被转移资源的对象不应再被使
  • 2023-07-13现代C++(Modern C++)基本用法实践:二、Lambda表达式
    概述lambda表达式,有时也被称为匿名函数。他提供了简短的,内联的函数对象。用法形式如:[capture](parameters)->return_type{body}具体用法如下文举例它的实现是由编译器决定的,在我的编译器上他是通过创建一个匿名类,通过重载()运算符,成为一个可调用对象,从而实现调用,类似://
  • 2023-07-13现代C++(Modern C++)基本用法实践:七、范围遍历
    概述c++的for循环在语法上有些刻板,近几个版本对此进行了优化,支持了基于范围的for循环用法举例参考测试项目代码ModernCppTest/modrenc_range_for.cpp主要内容:数组遍历vector遍历字符串遍历map遍历#include"ModernCppTestHeader.h"#include<vector>#include<map>
  • 2023-07-13现代C++(Modern C++)基本用法实践:六、constexpr编译时计算
    概述constexpr修饰的变量、函数、对象构造函数表示在编译时就可以确定。它经常用来计算一些编译期可以确定常数,和常数组成的表。比如编译时确定10000以内所有的素数,运行时用的时候直接查表。用法举例参考测试项目代码ModernCppTest/modrenc_constexpr.cpp主要内容:constexpr
  • 2023-07-13现代C++(Modern C++)基本用法实践:零、概述&测试项目
    序言习惯上,我们把C++11之前的C++语法特性称之为“传统C++”,而把c++11之后的语法特性称之为现代C++。有一种说法称C++为中级语言,因为它的特性介于低级语言(如各类汇编语言)和高级语言(Python、C#)之间--一般来说,它在运行效率上比高级语言要高,而在开发效率上又比高级语言低一些。随着C
  • 2023-07-13现代C++(Modern C++)基本用法实践:N、其他零散的常用特性
    概述这一篇简单介绍一些其他的比较实用的特性,如果读者想了解现代C++的全部特性,参考:cppreference其他特性预置和弃置函数default&delete在C++11中引入了default和delete关键字,允许程序员更加明确地控制类的默认操作(如默认构造函数,拷贝构造函数,拷贝赋值运算符,析构函数等)