Debug和Release的区别以及obj文件的作用

Debug和Release的区别 Debug:调试版本,包含调试信息,所以容量比release大很多,并且不进行任何优化,(优化会使调试复杂化,因为进行优化肯定会进行一些额外的处理,这样就导致了源代码和生成的指令间关系变得更加复杂),便于程序员调试。Debug模式下生成两个文件,除了.exe ...

2018-08-24 11:15:28

阅读数 251

评论数 0

vim常用的功能

vim是vi 的升级版本,它兼容vi的所有指令,而且还有一些新的特性,比如说预付高亮、可视化操作不仅可以在终端进行,还可以在 x Window、mac os、windows vim 有多种模式,我们常用的有三种:命令模式、插入模式、末行模式。 进入插入模式的三种方式: i : 从光标当前位置...

2018-08-24 10:45:37

阅读数 131

评论数 0

命令行选项解析函数(C语言):getopt()和getopt_long()

关于命令行参数的解析函数,看到一篇写的很详细的博客,分享给大家。 原链接点这里https://www.cnblogs.com/chenliyang/p/6633739.html 上午在看源码项目 webbench 时,刚开始就被一个似乎挺陌生函数 getopt_long() 给卡住了,说实话...

2018-08-22 10:35:20

阅读数 46

评论数 0

HTTP报头中为cookie服务的首部字段

Cookie的工作机制是用户识别和状态管理。Web网站为了管理用户的状态,会通过Web服务器,把一些数据临时写入用户的计算机内。当用户访问该Web网站时,可通过通信方式取回之前存放的Cookie。调用Cookie是,由于可校验Cookie的有效期,,以及发送方的域、路径、协议等,所以正规发布的Co...

2018-08-20 13:17:45

阅读数 276

评论数 0

HTTP的状态码

摘自图解HTTP第4章 当客户端向服务器端发送请求时,通过状态码可以知道自己的请求结果。 状态码的类别 接下来介绍一下常用的状态码 2XX 成功 200 (OK)请求已经正常处理 表示从客户端发来的请求已经被服务器正常处理了。 204 (No Content)请求处理成...

2018-08-20 09:34:58

阅读数 178

评论数 1

求一个数组中和为sum的方法数

题目描述 给定一个有n个正整数的数组A和一个整数sum,求选择数组A中部分数字和为sum的方案数。 当两种选取方案有一个数字的下标不一样,我们就认为是不同的组成方案。 这是一道简单的动态规划题目,困惑了我好久,今天终于搞明白了,分享给大家。这道题使用递归的方式做OJ是过不了的,时间复杂度太高...

2018-08-19 21:25:41

阅读数 848

评论数 2

动态规划---求最长公共子序列

直接看题: 对于两个字符串,请设计一个高效算法,求他们的最长公共子序列的长度,这里的最长公共子序列定义为有两个序列U1,U2,U3…Un和V1,V2,V3…Vn,其中Ui&ltUi+1,Vi&ltVi+1。且A[Ui] == B[Vi]。 给定两...

2018-08-19 19:55:37

阅读数 78

评论数 0

GET和POST的区别

转载自:https://www.cnblogs.com/logsharing/p/8448446.html 很不错的一篇文章,推荐大家看看~ 下表是参考自w3school的标准答案 接下来更具体的去了解它们的区别。 GET和POST都是HTTP协议中的两种发送请求的方法。 HTTP协...

2018-08-13 10:02:17

阅读数 59

评论数 0

Effective C++读书笔记----自定义类型的传参和返回值问题

对于自定义类型,传参的时候尽可能的使用传引用来代替传值。 看如下这个例子: #include <iostream> using namespace std; #include <string> c...

2018-08-05 13:18:13

阅读数 46

评论数 0

Effective C++ 读书笔记----接口和类的设计

设计接口时要让接口容易被正确使用,不易被误用。应该让接口具有如下这些性质: “促进被正确使用”,接口的一致性(比如STL中各个容器的接口)以及与内置类型的行为兼容。自定义的类型支持的操作尽量与内容类型的使用保持一致。 “阻止误用”的办法包括建立新类型、限制类型上的操作,束缚对象值,以及消除对象...

2018-08-05 09:59:23

阅读数 41

评论数 0

Effective C++读书笔记----资源管理

C++中,我们自己申请的资源,需要我们手动的释放。 有时候我们给了显示释放资源的语句,但是存在有些意外情况导致释放语句没能成功被执行。比如说在执行释放语句前函数提前返回;假如释放语句在一个循环内部,循环因为continue或者break提前结束;执行释放语句之前程序抛异常了。 为了防止资源泄漏,...

2018-08-04 11:15:07

阅读数 50

评论数 0

Effective C++读书笔记----构造/析构/赋值运算

对于一个空类,编译器会自动创建构造函数、拷贝构造函数、赋值运算符重载以及析构函数。(当然只有在这些函数在被调用的时候才会被编译器创建出来)如果我们在类中显示的声明了这些函数,编译器将不再自动生成这些函数。 当类的成员变量中有引用类型或者有const修饰,编译器不会为该类生成赋值运算符重载函数,尽...

2018-07-30 18:14:52

阅读数 58

评论数 0

Effective C++读书笔记---让自己习惯C++

* 声明式是告诉编译器某个东西的名称和类型。 * 签名式是指参数和返回值。一个函数的签名等同于该函数的类型(C++对签名式的官方认定不包括返回值) * 将函数声明为 explicit ,可以阻止他们被用来执行隐式转换,但他们仍可以用来进行下你是类型转换 * 其他静态成员只能在类里边进行声明...

2018-07-29 16:53:47

阅读数 190

评论数 0

函数&指针&数组混搭

整型变量 int a; a是一个整型变量 指针变量 int* p; p是一个指向整型的指针 整型数组 int arr[ ] arr是一个数组,数组的每一个元素都是一个整型 指针数组 int* parr[ ] 数组指针 int (*p) [ ] ...

2018-07-27 21:50:22

阅读数 32

评论数 0

C语言中的操作符

首先讲述一下两个概念:左值和右值 左值就是能够出现在赋值运算符左边的东西,右值就是能够出现在赋值运算符右边的东西 算数操作符(+ -  *   /  %) 除了 % 操作符,其他几个操作符都可以作用于整数和浮点数。 对于 / 操作符,如果两个操作数都是整数,则做整数除法。只要其中有一个是浮...

2018-07-25 17:13:28

阅读数 34

评论数 0

C语言预备知识

C语言的特点:高效、灵活、功能丰富、表达力强和较高的可移植性 #include <stdio.h> 和#include "stdio.h"的区别 查找路径不一样。 #include 预处理指令用于把这个文件包含到...

2018-07-24 09:42:11

阅读数 47

评论数 0

内存的分区与数据的存放

典型的存储器安排(Linux下的内存分配) 栈区:由编译器自动分配与释放。用于存放局部变量、函数参数、函数返回值。特点:效率高,但空间大小有限。 堆区:使用malloc或者new开辟的空间都是在堆上分配的,需要程序员显示地释放。如果没有释放,在程序运行结束时可能由OS回收。特点:使用灵活,...

2018-07-23 19:34:58

阅读数 645

评论数 2

编译和链接的过程

程序要运行起来,必须要经过四个步骤:预处理、编译、汇编和链接。接下来通过几个简单的例子来详细讲解一下这些过程。 对于上边用到的几个选项需要说明一下。 使用 gcc 命令不跟任何的选项的话,会默认执行预处理、编译、汇编、链接这整个过程,如果程序没有错,就会得到一个可执行文件,默认为a.out...

2018-07-22 23:08:24

阅读数 867

评论数 0

vector中常见接口的介绍与使用

迭代器相关iterator begin();正向迭代器:返回一个迭代器,指向vector对象的第一个元素iterator end();正向迭代器:返回一个迭代器,指向vector对象最后一个元素的后边reverse_iterator rbegin();反向迭代器:返回一个迭代器,指向vector对...

2018-07-16 12:34:16

阅读数 975

评论数 0

STL中vector的构造函数

        vector是由STL提供的一种序列式容器,它的底层其实就是一个动态数组。如要使用vector,需要#include<vector>。vector的特点:        因为支持下标访问,所以能高效的进行随机存取,时间复杂度为O(1); ...

2018-07-15 15:53:01

阅读数 1300

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭