阅读更多

6顶
0踩

编程语言

转载新闻 Google 的 C++ 编码规范(中文版)

2014-03-26 11:18 by 副主编 WnouM 评论(0) 有8357人浏览
C++ 是 Google 大部分开源项目的主要编程语言。正如每个 C++ 程序员都知道的,C++ 有很多强大的特性,但这种强大不可避免的导致它走向复杂,使代码更容易产生 bug,难以阅读和维护。

Google 经常会发布一些开源项目,意味着会接受来自其他代码贡献者的代码。但是如果代码贡献者的编程风格与 Google 的不一致,会给代码阅读者和其他代码提交这造成不小的困扰。Google 因此发布了这份自己的编程风格,使所有提交代码的人都能获知 Google 的编程风格。

创新工场董事长兼CEO李开复曾经对Google C++编码规范给予了极高的评价:“我认为这是地球上最好的一份C++编程规范,没有之一,建议广大国内外IT研究使用。”

Google C++ 编码规范在线地址:http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml



中文版下载:Google C++ 编码规范(PDF)



本文转载自:乐嵌网
  • 大小: 209.3 KB
  • 大小: 168.4 KB
来自: 乐嵌网
6
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • PEBrowse Debug

    本工具为经典的dotnet动态调试工具,非常适合用于动态调试dotnet程序

  • windbg dt命令显示PE相关数据结构

    0:001> dt ntdll!*IMAGE_* ntdll!_IMAGE_NT_HEADERS ntdll!_IMAGE_DOS_HEADER ntdll!_IMAGE_FILE_HEADER ntdll!_IMAGE_OPTIONAL_HEADER ntdll!_IMAGE_DATA_DI...

  • PE文件格式详解(7)

    调试信息段,.debug  调试信息位于.debug段之中,同时PE文件格式也支持单独的调试文件(通常由.DBG扩展名标识)作为一种将调试信息集中的方法。调试段包含了调试信息,但是调试目录却位于早先提到的.rdata段之中。这其中每个目录都涉及了.debug段之中的调试信息。调试目录的结构IMAGE_DEBUG_DIRECTORY被定义为:WINNT.Htypedef struct _IMAG

  • PE文件格式学习(九):调试表(DebugDirectory)

    微软官方参考文档:https://docs.microsoft.com/en-us/windows/desktop/debug/pe-format#debug-type

  • 从PE结构取调试信息 代码

    从PE结构取调试信息 代码

  • PE文件中各IMAGE_DATA_DIRECTORY的定义

       首先列出IMAGE_DATA_DIRECTORY结构:(简单的结构就不注释了)typedef struct _IMAGE_DATA_DIRECTORY {    DWORD VirtualAddress;    DWORD Size;} IMAGE_DATA_DIRECTORY,*PIMAGE_DATA_DIRECTORY;    VirtualAddress。是所指向的

  • windows PE文件都包含哪些信息【详细汇总介绍】

    PE(Portable Executable)文件是Windows操作系统中使用的可执行文件格式,用于.exe、.dll、.sys等文件。PE文件结构是由一系列紧密相关的头部和数据节组成的,每个部分都承担着特定的功能。

  • 【PE】PE文件结构学习

    【PE】PE文件结构学习PE文件内存对齐文件对齐PE结构分析DOS头结构PE头文件区块表输入表输出表:基址重定位表: PE文件 内存对齐 PE文件包括: DLL,EXE,OCX,SYS等。 Windows加载器遍历PE文件并将其复制到内存镜像。PE文件结构在磁盘中和内存中基本是一样的,但又不是完全复制,对齐方式有所不同。 如图:在Windows系统中,一个节在内存中对齐单位是一个页的大小。 对于32位操作系统来说,这个值是4KB(1000H) 对于64位系统来说,这个值是8KB(2000H) 文件

  • PE文件结构和调试

    1.PE文件结构 [参考文章](https://blog.csdn.net/adam001521/article/details/84658708) 1.1结构地址偏移 hMod = GetModuleHandle(NULL); pAddr = (PBYTE)hMod; PrintImportTable(pAddr); // pAddr = VA to PE signature (IMAGE_NT_HEADERS) pAddr += *((long long*)&pAddr[0x3C]

  • C++PE文件格式解析类(轻松制作自己的PE文件解析器)

    用C++封装了可以轻松高效获取PE文件中各信息的类,该类有较高可读性,同时具有一定的通用性,适合学习,也适合轻松实现自己的PE文件信息查看软件

  • Windows注入与拦截(6) -- 从内存中加载DLL

    Windows提供的API(LoadLibrary, LoadLibraryEx)只支持从文件系统上加载DLL文件,我们无法使用这些API从内存中加载DLL。 但是有些时候,我们的确需要从内存中加载DLL,比如: 对发布的文件数量有限制。我们可以将DLL打包到exe的资源中,程序运行时从调用LoadResource等API读取DLL文件到内存中,然后从内存中加载DLL。 需要对DLL进行压缩...

  • 计算机程序编译过程,程序编译过程

    相对虚拟地址在可执行文件中,许多地方都需要被指定一个在内存中的地址。例如在使用全局变量时需要它的地址。PE文件可以被加载到进程地址空间中的任何地方。虽然它有一个首选地址,但你却不能依赖可执行文件一定会被加载到那个地址。因此就需要按一定方式指定地址,使它们并不依赖于可执行文件的加载地址。为了避免在PE文件中硬编码内存地址,因此就使用了RVA。RVA只是一个相对于PE文件在内存中的加载位置的偏移。例如...

  • MS 调试信息分析(一)

    首先我在这里说明,MS 调试信息的支持其实MS 已经提供了DBGhelp和imagehel 这两个库,当我们如果想更深入的了解调试信息就必须来了解调试文件。我在这里只讨论DBG文件和PDB文件,由于其中的很多信息,MS并没有公开,我也只属于探索阶段,所以错误再所难免。  一般的调式信息由MS提供的一般由两个文件,DBG文件和PDB文件,在NT4。0中没有PDB文件,PDB文件中的信息被保存在DBG

  • PE文件格式详解(下)

    预定义段   一个Windows NT的应用程序典型地拥有9个预定义段,它们是.text、.bss、.rdata、.data、.rsrc、.edata、.idata、.pdata和.debug。一些应用程序不需要所有的这些段,同样还有一些应用程序为了自己特殊的需要而定义了更多的段。这种做法与MS-DOS和Windows 3.1中的代码段和数据段相似。事实上,应用程序定义一个独特的段的方法是使用标

  • PE文件结构-目录项结构

    目录项结构 数据目录项位于可选PE头的最后一部分,向前四个字节说明了数据目录项的数量,而每个数据目录项的结构一致,分别包含RVA地址和数据项的大小。 IMAGE_DATA_DIRECTORY STRUCT { DWORD VirtualAddress ;数据的起始RVA DWORD isize ;数据块的长度 } 数据目录项通常共有16项,它们的详细说明如下: 英文描述 中文描述 ...

  • 这可能是最详细的 Windows Debug 详解 了

    Debug概览 Debug是什么? debug是Windows 16位或者32位机器上的一款调试工具。也就是说,在WindowsXP及以前的机器上都有debug,直接Win+X debug就可以调出;在之后的32位机也有;但是在之后的64位机器上不存在,即使有,也无法运行。不必尝试到底能不能运行,绝对不能 相似的,微软的masm也无法在64位版本的系统上运行。 可以通过安装dosbox来...

  • DelphiXE环境认知(第一章 Project Options)

    DelphiXE环境认知作者:帅宏军 时间:2011年4月 说明:根据DelphiXE的自带帮助翻译而来,为作者个人看法,如有翻译不当,仅供参考。 shuaihj@163.com http://blog.csdn.net/shuaihj 第一章、 Project OptionsØ Project > Options 这个页面用来设置当前项目的Delphi编译器选项。Default勾选后可将当前的配

  • PE文件详解之IMAGE_NT_HEADER结构

    PE Header 是PE相关结构NT映像头(IMAGE_NT_HEADER)的简称。里面包含了许多PE装载器用到的重要字段。      先看看该结构体: typedef struct _IMAGE_NT_HEADERS { DWORD Signature; IMAGE_FILE_HEADER FileHeader; IMAGE_OPTION

  • PE代码注入

    PE文件入口地址EntryPoint指向了PE文件开始执行的位置,关于PE文件的具体格式,大家可以自行百度。 本代码主要实现了在32位可执行程序中注入了一个弹窗 。其主要原理是修改EntryPoint地址处的内容,指向自己代码的地方,然后执行完毕后,再跳转到原入口的地址。 其中值得注意的几点: (1)需要关闭PE的地址随机化功能,可以通过修改OptionHeader头中的DllCharacteristics = 0x8100,来绕过地址随机化。 (2)计算E8和E9的时候,CALL 偏移:跳转地址 = 当前

  • PE文件学习(四)基址重定位

    数据目录的IMAGE_DIRECTORY_ENTRY_BASERELOC项指向此结构,由于在Windows系统中DLL(动态链接库)文件并不是每次都能加载到预设的基址(ImageBase)上,因此基址重定位主要应用于DLL文件中。       一般情况下重定位表位于一个名为.reloc的区块内,PE文件中的重定位结构是由多个IMAGE_BASE_RELOCATION子结构组成的,每个子结构只负责

Global site tag (gtag.js) - Google Analytics