博客主页 所有文章 标签 关于我
img

Dxy

C++ / Linux / github

杜鑫源

个人站

欢迎来到我的个人站~


  • 博客主页
  • 所有文章
  • 标签
  • 关于我
  1. 网络层拦截可选项

    网络层拦截可选项 【1】客户端应用层实现 -> 【2】客户端网络库实现 -> 【3】系统库libc.so -> 【4】(从这里开始是内核态) syscall -> 【5】tcp/ip协议栈 -> 【6】NFQUEUE-> 【7】BPF -> 【8】tun adapter (假网卡) -> 【9】真网卡 -> 【10】外部网络设备【1】客户端应用层实现 ​ client可以在应用层直接支持proxy: 链接模块直接实现Proxy(Re...…

    2017-03-21
    阅读全文 »

  2. 深入理解C++11(笔记):第七章 为思考方式而改变

    “Let’s begin!”7.1 指针空值–nullptr7.1.1 指针空值:从0到NULL,再到nullptr 一般情况下,NULL是一个宏定义。在传统的C头文件(stddef.h)中我们可以看到如下代码:#undef NULL#if define(__cplusplus)#define NULL 0#else#define NULL ((void *)0)#endif 因此,NULL值得不唯一性在C++程序中可能会出现重载函数调用非预期等问题7.1.2 nullptr和nu...…

    2017-03-18
    c++c++11
    阅读全文 »

  3. 深入理解C++11(笔记):第六章 提高性能及操作硬件的能力

    “Let’s begin!”6.1 常量表达式6.1.1 运行时常量性与编译时常量性 const修饰的函数返回值,只保证了在运行时期内其值是不可以被更改的。C++11中对编译时期常量的回答是constexpr,即常量表达式。constexpr int GetConst() { return 1; } 在C++11中,常量表达式实际上可以作用的实体不仅限于函数,还可以作用于数据声明以及类的构造函数等6.1.2 常量表达式函数 通常我们可以在函数返回类型前加入关键字constexpr...…

    2017-03-18
    c++c++11
    阅读全文 »

  4. 深入理解C++11(笔记):第五章 提高类型安全

    “Let’s begin!” 相比于C语言,C++则更为强调类型,其目的是为了在构建复杂的软件系统时,能够尽可能地在编译时期找到错误并提醒程序员5.1 强类型枚举5.1.1 枚举:分门别类与数值的名字 在C++中,更受推荐的是–静态常量 const static int Male = 0; const static int Female = 1;5.1.2 强类型枚举以及C++11对原有枚举类型的扩展 非强类型作用域,允许饮食转换为整形,占用存储空间以及符号性不确定,...…

    2017-03-18
    c++
    阅读全文 »

  5. 深入理解C++11(笔记):第四章 新兵易学,老兵易用

    4.1 右尖括号>的改进 在C++98中,有一条需要程序员规避的规则:如果在实例化模板的时候出现了连续的两个右尖括号,那么它们之间需要一个空格来进行分隔,以避免发生编译时的错误template <int i> class X {};template <class T> class Y {};Y<X<1> > x1; // 编译成功Y<X<2>> x2; // 编译失败 事实上,除去潜逃的模板标识,...…

    2017-01-25
    c++
    阅读全文 »

  6. 深入理解C++11(笔记):第三章 通用为本,专用为末

    C++11中的新特性往往具有广泛的可用性。3.1 继承构造函数类具有可派生性,派生类可以自动获得基类的成员变量和接口。不过基类的非虚函数则无法再被派生类使用了。struct A { A(int i) {} A(double d, int i) {} A(float f, int i, const char *c) {}};struct B : A { B(int i) : A(i) {} B(double d, int i) : A(d, i) {} ...…

    2016-12-29
    c++
    阅读全文 »

  7. 深入理解C++11(笔记):第二章 保证稳定性与兼容性

    “Let’s begin!”2.1 保持与C99兼容2.1.1 预定义宏 宏名称 功能描述 __STDC_HOSTED__ 如果编译器的目标系统环境中包含完整的标准C库,那么这个宏就定义为1,否则宏的值为0 __STDC__ C编译器中通常用这个宏的值来表示编译器的实现是否和C标准一致。 __STDC_VERSION__ C编译器通常用这个...…

    2016-12-19
    c++
    阅读全文 »

  8. 深入理解C++11(笔记):第一章 新标准的诞生

    说在前面 感谢(加)Michael Wong、IBM XL编译器中国开发团队著《深入理解C++11-C++11新特性解析与应用》笔者在阅读此书收益良多,故整理出一套笔记分享。不足之处还望多多建议。 “Let’s begin!”1.1 曙光:C++11标准的诞生C++11的整体设计目标如下: 使得c++称为更好的适用于系统开发及库开发的语言。 使得c++称为更易于教学的语言(语法更加一致化和简单化)。 保证语言的稳定性,以及和c++03及c语言的兼容性。1.2 今时今日...…

    2016-12-19
    阅读全文 »

  9. Git教程

    介绍  Git是做项目的版本管理,你也可以称它们为版本管理工具。假如现在你有一个文件夹,里面可以是项目,也可以是你的个人笔记(如我这个博客),或者是你的简历、毕业设计等等,都可以使用git来管理。  目前常用的版本控制器有Git和SVN,即使这两个你没有全用过,至少也会听过,我这里以Git为例,个人比较喜欢Git,你也可以看看这篇文章:为什么Git比SVN好。我使用的是Mac,Mac上没自带Git环境,但是作为iOS开发者,我安装Xcode的时候,Xcode里是有自带Git的,所以我不需要...…

    2016-07-13
    工具
    阅读全文 »


← 最近 2 / 2
  • RSS
  • Email

Copyright © 杜鑫源 2020 Theme by dxyuan |

本站总访问量 次