
C++
文章平均质量分 75
TodorovChen
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
STL hash_map初识
hash_map 查找速度会比map快,而且查找速度基本和数据量大小无关,属于常数级别;而map的查找速度是log(n)级别。如果你考虑效率,特别是在元素达到一定数量级时,考虑考虑hash_map。但若你对内存使用特别严格,希望程序尽可能少消耗内存,那么一定要小心,hash_map可能会让你陷入尴尬,特别是当你的hash_map对象特别多时,你就更无法控制了,而且hash_map的构造速度原创 2014-02-24 20:19:07 · 609 阅读 · 0 评论 -
c++ map key为结构体
项目中需要将结构体作为hash的key,一开始用hash_map,但是结构体中多值比较一直失败,所以尝试了map。#include #include #include #include using namespace std;typedef struct ip_tuple{ int src_port; int dst_port; char* src_ip原创 2014-02-26 11:01:44 · 6951 阅读 · 0 评论 -
C++引用传递和值传递
从概念上讲。指针从本质上讲就是存放变量地址 的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变。而引用是一个别名,它在逻辑上不是独立的,它 的存在具有依附性,所以引用必须在一开始就被初始化,而且其引用的对象在其整个生命周期中是不能被改变的(自始至终只能依附于同一个变量)。在C++ 中,指针和引用经常用于函数的参数传递,然而,指针转载 2014-02-28 18:56:07 · 1096 阅读 · 0 评论 -
char*,const char*和string的相互转换
1. string转const char* string s = "abc"; const char* c_s = s.c_str();2. const char*转string 直接赋值即可 const char* c_s = "abc"; string s(c_s);3. string转char* stri转载 2014-04-13 22:03:48 · 515 阅读 · 0 评论 -
STL中vector、list、deque和map的区别
1 vector 向量 相当于一个数组 在内存中分配一块连续的内存空间进行存储。支持不指定vector大小的存储。STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacituy()函数返回的大小,当超过此分配的空间时再整体重新放分配一块内存存储,这给人以vector可以不指定vector即一个连续内存的大小的感觉。通常此默认的内存分配能完成大部分情况下的存储。转载 2014-07-26 15:15:56 · 401 阅读 · 0 评论 -
C++内存分配:堆和栈
我们都知道C++中有三种创建对象的方法,如下:#include using namespace std;class A{private: int n;public: A(int m):n(m) { } ~A(){}};int main(){ A a(1); //栈中分配 A b = A(1); //栈中分配转载 2014-08-04 21:06:31 · 514 阅读 · 0 评论 -
Socket UDP【简单聊天实例】
#include #include #include #include #include #include #include #include #include using namespace std;#define MAXDATASIZE 1024#define IP "127.0.0.1"int send_head_port;int send_tail_port;原创 2014-10-05 09:31:47 · 702 阅读 · 0 评论 -
c++解析json文件: Rapidjson
#include "rapidjson/document.h"#include "rapidjson/prettywriter.h"#include "rapidjson/filestream.h" #include #include #include using namespace rapidjson;using namespace std;int main(){原创 2014-10-05 00:30:16 · 4838 阅读 · 0 评论