随笔分类 - Coding-C++
Primary skills
摘要:Ref: ELF文件的加载和动态链接过程 【Linux内核】既支持静态链接的ELF映像,也支持动态链接的ELF映像,而且装入/启动ELF映像必需由内核完成, 而动态链接的实现则既可以在内核中完成,也可在用户空间完成。 因此,GNU把对于动态链接ELF映像的支持作了分工: "ELF映像的装入/启动"
阅读全文
摘要:Outline ELF文件解剖 ~Linux C_5/6/7/12_ELF链接 段和节的理解 一、text段、data段和bss段知识介绍(初步了解) 三个段 1、bss(可读可写) bss是英文Block Started by Symbol的简称,通常是指用来存放程序中未初始化的全局变量的一块内存
阅读全文
摘要:Linux系统中“动态库”和“静态库”那点事儿 - 阅读笔记 ELF 在Linux操作系统中,普遍使用ELF格式作为可执行程序或者程序生成过程中的中间格式。 ELF(Executable and Linking Format,可执行连接格式)是UNIX系统实验室(USL)作为应用程序二进制接口(Ap
阅读全文
摘要:认识 Googe Test From: 玩转Google开源C++单元测试框架Google Test系列(gtest)(总) 官方网站 http://code.google.com/p/googletest/ 从官方的使用文档里,你几乎可以获得你想要的所有东西 http://code.google.
阅读全文
摘要:官方文档:https://cmake.org/cmake-tutorial/ 这里只是简单的介绍一下,可能gtest在real world中 is more pragmatic. 原文:为工程添加测试 定义一个宏,用来简化测试工作: 测试结果的样子: End.
阅读全文
摘要:CMake cmake与autoconf+automake的对比 C++构建系统的选择 结论:用cmake即可,上古神器过于复杂。 cmake与autoconf+automake的对比 C++构建系统的选择 结论:用cmake即可,上古神器过于复杂。 CMake是一个跨平台的安装(编译)工具,可以用
阅读全文
摘要:Install: sudo apt-get install valgrind From: http://www.jianshu.com/p/6f03a0cfe60c 测试C++程序:使用Catch和Valgrind 注:属于底层的一切东西,都会放在Magic C下。 Linux下利用Valgrind
阅读全文
摘要:有本书看上去不错:《C++应用程序性能优化::第一章C++对象模型》学习和理解 这里比较关心的是:深度优化,系统级优化,直到高缓级别。想想就爽死了。 牲口才能精通的文档:http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html 基础知识 如何用C
阅读全文
摘要:相关资源: clang static analyzer源码分析(二) [Linux]用Clang实现代码静态分析【有例子】 Building Clang and Working with the Code【官方安装文档】 scan-build: running the analyzer from t
阅读全文
摘要:做算法,不懂性能分析,无颜见父老乡亲。 Software optimization resources【非常棒的资源博客,牛的不要不要的】 命令行步骤: 示范代码:
阅读全文
摘要:相关资源 开源:google/googletest 了解入门:https://www.cnblogs.com/coderzh/archive/2009/04/06/1426755.html 轻松编写 C++ 单元测试:https://www.ibm.com/developerworks/cn/lin
阅读全文
摘要:教程:https://unity3d.com/cn/learn/tutorials/s/scripting 补充:http://www.runoob.com/csharp/csharp-inheritance.html C#复习结合Unity3D复习笔记,用时一天。 syntax 语法 perpen
阅读全文
摘要:标准模板库de字符串 字符串 一、字符串在STL中的角色 Code from <C++ Primer Plus>, my recent study into c++. Code is everything, code is the best teacher! The Standard Templat
阅读全文
摘要:Ref: 探寻C++最快的读取文件的方案 从上面可以看出几个问题 不采用与采用read buffer的效果对比:(固态硬盘) Ref: Which is fastest: read, fread, ifstream or mmap? Ref: Linux下快速扩展文件大小 简单的总结就是:1. ls
阅读全文
摘要:远观像"类",近看不是 Template是编译时多态。所有的模板都是在编译时产生对应的代码,它没有面向对象中的虚表,无法实现动态多态。 模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。 Function Template A function template is a pr
阅读全文
摘要:一、C++ const 和 constexpr 的区别? constexpr 表示这玩意儿在编译期就可以算出来(前提是为了算出它所依赖的东西也是在编译期可以算出来的)。 const 只保证了运行时不直接被修改(但这个东西仍然可能是个动态变量)。 constexpr 是 C++11 引入的,一方面是为
阅读全文
摘要:前言 初步认识 原文链接:https://blog.csdn.net/flowing_wind/java/article/details/81301001 参考资料:《C++ Primer中文版 第五版》 我们知道除了静态内存和栈内存外,每个程序还有一个内存池,这部分内存被称为自由空间或者堆。程序用
阅读全文
摘要:异常处理 一、相关资料 【C++】异常简述(一):C语言中的异常处理机制 【C++】异常简述(二):C++的异常处理机制 【C++】异常简述(三):补充之如何看待C++异常 [ 之后,针对本章节、根据链接再进行一次系统的学习 ] 基本结构 try { throw logic_error{"blah"
阅读全文
摘要:学习大纲 Ref: 【c++】可调用对象(Callable Objects) Five kinds of callable objects: Functions. Pointers to functions. Objects of a class that overloads (). Objects
阅读全文
摘要:Introduction 一、函数重载 关于重载 Overloading,最基本的是根据以下两个特性: - 基于参数 - 基于const 其实,函数重载也没啥多余值得说的东西。 二、自定义操作规则 c++的操蛋属性:自己为一档,空一档,其他随意。 UB_stack a; UB_stack b = a
阅读全文