C/C++
文章平均质量分 60
依_旧
臣心一片磁针石,不指南方不肯休.
展开
-
【请阅】基础篇:C/C++头文件管理
【知识点1】#include“.h”与#include <.h>的区别使用”.h” 使用“.h”意味编译器首先查找当前的工作目录或源代码目录(或其他目录,这取决于编译器)。如果没有在那里找到头文件,则将在标准位置查找。使用<.h> 表明编译器将在存储标准头文件的主机系统的文件系统中查找。结论 在包含自己的头文件时,应使用引号而不是尖括号 【知识点2】头文件管理背景 在同一个文件中只能将原创 2017-03-22 23:11:41 · 1415 阅读 · 0 评论 -
【请阅】基础篇:C/C++ 作用域和链接性
【知识点1】静态变量作用域和链接性首先看代码int global = 1000;static int one_file = 50;int main(){ ...}void function1(int n){ static int count = 0; int llama = 0; ...}void function2(int q){ ...原创 2017-03-23 22:20:14 · 1089 阅读 · 0 评论 -
尽量延后变量定义式的出现时间《Effective C++》
读《Effective C++》知识点整理背景:只要定义了一个变量而其类型带有一个构造函数或析构函数,那么程序的控制流到达这个变量定义式时,你便得承受构造成本。当这个变量离开作用域时,你便得承受析构成本。即使这个变量最终并未被使用,仍需考虑这些成本。因此你必须尽可能避免这情况示例1:std::string encryptpassword(const std::string&原创 2017-12-21 10:34:04 · 213 阅读 · 0 评论 -
尽量少做转型动作 《Effective C++》
背景:C++规则的设计目标之一:保证 类型错误 绝不可发生。(非常重要!)一个程序能干净地通过编译,表示:该程序不会在任何对象身上执行 任何不安全,无意义、愚蠢的操作。但转型破坏类型系统。可能会导致麻烦。c++提供的转型方案:const_cast(expression)dynamic_cast(expression)reinterpret_cast(expression原创 2017-12-21 11:13:43 · 255 阅读 · 0 评论 -
C/C++基础: __cdecl,__stdcall,__fastcall,__pascal,__thiscall修饰符
__cdecl,__stdcall,__fastcall,__pascal,__thiscall修饰符,平时使用最多的就是__stdcall修饰符。这几个主要是用来表达函数参数入栈的顺序,参数出栈由谁负责。具体如下图所示。...原创 2018-03-07 10:16:12 · 310 阅读 · 0 评论