自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (3)
  • 收藏
  • 关注

原创 Linux系统编程--fork和vfork

1,在fork还没实现copy on write之前,Unix设计者很关心fork之后立刻执行exec所造成的地址空间浪费,所以引入了vfork系统调用。 2,vfork有个限制,子进程必须立刻执行exit或者exec函数。 即使fork实现了copy on write,效率也没有vfork高,但是我们不推荐使用vfork,因为几乎每一个vfork的实现,都或多或少存在一定问题。结论:1.for

2016-03-15 20:48:22 554

转载 “大姨吗”创始人柴可:“慢就是快”

原标题:“大姨吗”创始人柴可:4个小故事,告诉你“慢就是快”   柴可,人称”大姨吗”之父。”大姨吗”创始人&CEO,国内最懂”大姨妈”的男人。用生活中的4个故事看透创业本质。在创业中,勿忘初心,保持良心美好品质,跑掉惯性,跟着自己的节奏,一定会在创业过程中拥有意想不到的收获。 以下为部分演讲内容:   感谢大家,我很荣幸这次能够跟大家做一些分享。今天分享的主题,我做了认真准备,它来自于我的创

2016-03-15 19:25:11 685

原创 申请TexturePacker免费注册码(TP:639BBF0B)

Bloggers and framework developers can get a free 1-year-license for my tools.My requirements to you are:You write your own blog about game/software/web development Your blog has 10 recent blog posts

2016-03-10 17:12:04 616

原创 蓝桥杯预选反思

今天下午参加蓝桥杯预选,1个半小时的时间,题目难度很大,让我感觉到自己在算法方面的功力是多么的低微,说实话,倍感耻辱。这就是刷算法题刷的少带来的严重后果,不能停止算法与数据结构的钻研,不能停止算法与数据结构的钻研,不能停止算法与数据结构的钻研,重要的事说3遍!这是作为一个程序员站住脚跟,以图长远发展的根本。http://www.zhihu.com/question/27744730以此为榜样,盼

2015-12-13 04:39:01 574

原创 我又回来了

因为没网的缘故,有一个月没写博客了,现在我又回来了,继续写。 进了工作室感觉碾压感更加强烈,太多的东西没学,代码量也明显不够。现在做一下这个学期的阶段计划,以督促自己,如下:**1,数据结构与算法分析 每天看5页 每天刷2道2,STL源码剖析 每天看5页3,C专家编程 每天看5页4,C++对象模型

2015-09-17 17:13:16 340

原创 一级指针以及二级指针

我想不大理解二级指针的根源是我对程序对堆栈的用法还不够深入了解。 采用一级指针最好是方便修改指针对象的值,采用二级指针最好是方便修改指针的值。#include <iostream>#include <stdio.h>using namespace std;class haha{};void main(){ haha *p(new haha); printf("%p\n",

2015-08-12 09:47:05 993 1

原创 类的指针和引用

C++是使用指针和引用最多的语言,其中的水有多深,只有开发者自己知道。本人菜鸟一枚,也是觉得这个坑太深,每次遇到他们就头疼不已,所以写个demo做个测试,把细节再挖一挖。

2015-08-12 07:39:26 582

原创 构造函数delete和default关键字分析

myclass(const myclass &other)= delete;//默认删除拷贝构造函数,无法拷贝构造myclass() = default;//默认存在,可以构造#include <iostream>using namespace std;//如果声明已经定义,便不会生成//delete可以禁用默认生成的函数,禁用构造,可以无法实例化;禁用拷贝构造,禁止别人拷贝你//defaul

2015-08-11 10:30:03 3520 1

原创 深拷贝和浅拷贝

这个本应该是昨天的内容,但昨天下于都贷款还有交学费的事耽误了,所以搁置到今天处理。 下面来分析下深拷贝和浅拷贝的重要差别。 简单的来说就是,在有指针的情况下,浅拷贝只是增加了一个指针指向已经存在的内存,而深拷贝就是增加一个指针并且申请一个新的内存,使这个增加的指针指向这个新的内存,采用深拷贝的情况下,释放内存的时候就不会出现在浅拷贝时重复释放同一内存的错误!#define _CRT_SECURE

2015-08-11 10:24:12 401

原创 C++ class与内存

//类名 变量名 栈区//类名 *指针名 = new 类名 堆区//类的静态成员 静态区//类的成员函数,静态函数都在代码区,类的函数都是共享的 //代码共享,所有的类对象共享代码//const变量在类的外部,一开始必须初始化,用常量强行替换,不读内存 //const变量在类的内部,必须构建一个类才能初始化,const与C语言里的const是一样的 //常规创建类对象的时候

2015-08-09 16:43:30 394

原创 const和mutable

mutalbe的中文意思是“可变的,易变的”,跟constant(既C++中的const)是反义词。  在C++中,mutable也是为了突破const的限制而设置的。被mutable修饰的变量,将永远处于可变的状态,即使在一个const函数中。  我们知道,如果类的成员函数不会改变对象的状态,那么这个成员函数一般会声明成const的。但是,有些时候,我们需要在const的函数里面修改一些跟类状态无

2015-08-09 13:43:46 351

原创 C++ explicit关键字

雨后的清晨感觉特别干净,草上带着的露水特别美,再加上冷冷的空气,吸上一口,真的如新生了一般。神清气爽的日子,能够写出更加纯粹的代码。 今天进入面向对象思想的deep研究阶段。C++explicit关键字用来修饰类的构造函数,声明该构造函数是显式的,它出现的原因是为了避免某些情况下的不正常的隐式转换。如果一个构造函数带有一个参数,那么在编译的时候就会默认有一个缺省的转换:将与该构造函数对应的数据类型

2015-08-09 11:10:48 388

原创 函数模板覆盖以及处理类的私有

函数模板实现通用,可以根据自有数据类型,进行优化结构体可以直接赋值(没有私有变量)所有成员都是公有的类型可以赋值(一开始初始化) 如果类有私有成员变量,不可以用{}初始化类的对象之间默认是可以直接赋值类,结构体都有一个默认赋值操作= 浅拷贝 ,交换数据深拷贝用的最多,函数模板的覆盖#define _CRT_SECURE_NO_WARNINGS#include<iostream>#include

2015-08-08 16:08:22 444

原创 类型转换

一,static_cast<需要转换的数据类型>(要转换的数据) 80%int *p = static_cast<int*> (malloc(100));二,const_cast 去掉常量指针属性 %5int *pnew = const_cast<int *>(p);三,reinterpret_cast 专业转换指针,最

2015-08-08 16:00:22 386

原创 函数包装器

函数包装器步骤: 第一,设计执行接口,接口设计关卡(),计数 第二,函数包装器依赖于函数模板,实现通用泛型 第三,函数代码可以内嵌在另外一个函数,实现函数怀孕函数包装器,用于管理内嵌函数,外部函数调用#include<iostream>#include<functional>using namespace std;//函数包装器, T数据类型, F是函数template<typenam

2015-08-08 15:55:55 612

原创 通用函数可变参数模板

通用可变参数模板 处理不限定个数的参数,处理不同类型//设计可以修改原来的数据的 T &value, Args &…args //设计可以修改副本 T value, Args …args //设计不可以可以改原来的数据不可以修改副本 const T value, const Args …args //设计引用原来的数据不可以修改 const T &value, cons

2015-08-08 15:48:09 305

原创 new高级用法

#include<iostream>#include<new>const int buf(512);//限定一个常量整数512int N(5);//数组的长度char buffer[buf] = {0};//静态区//p1,p3,p5作为指针变量在栈区,存储的地址指向堆区//手动释放内存//p2,p4,p6作为指针变量在栈区,存储的地址在静态区。缓冲区。//自动释放内存,用于分配用完了就

2015-08-08 15:44:41 439

原创 C++数组

array:C++的静态数组方式,不能自动变长,所有元素线性排列,类型一致,在栈上分配; double db[4] = { 1.1, 2.2, 3.3, 4.4 }; //std::array数据类型,double元素类型,4个数 std::array<double, 4> dbnew1 = { 10.1, 10.2, 10.3, 10.4 }; std::array

2015-08-08 12:02:57 735

原创 8.8日知识点总结

敲了几天的基础知识demo,发现特别容易忘记,于是决定接下来的每一天都把敲过的基础代码贴到博客上,一来是自己把知识点重新梳理,加深理解;二来是把自己对一些问题的解决办法都记录下来,以便以后备忘。今天的知识点比较零乱,我得好好整理。 1.引用包装器#include <iostream>template<typename T>void com(T arg){ std::cout << &

2015-08-08 11:24:30 552

原创 Sizeof与Strlen的区别与联系

1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。 该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以”\0”结尾的。 sizeof还可以用函数做参数,比如: short f(); printf("%d\n",

2015-08-02 12:04:27 420

原创 下个月计划

从今天开始一直到下个月末,准备用这一个月时间重新学习一下数据结构的知识。 第1周,用着一个星期把《数据结构》李云清,揭安全C语言版重新看一遍。一天看70面。这个星期完全能看完。 第2周,对各种典型数据结构要敲到烂熟,必须能够自己实现一遍。 第3周,用C++实现一遍。加深对C++的STL和boost理解。 第4周,看C++的STL和boost源码,并试着重复造轮子,自己动手实现。 第5周,扫

2015-05-27 08:35:41 375

原创 创建CCSprite的几种方式

第一种:CCSprite *bg = CCSprite::create("background.jpg",CCRectMake(0,0,480,320));直接create第二种:CCImage * image = new CCImage();image->initWithImageFile("plant.png");CCTexture2D * texture = new CCTexture2D(

2015-05-26 17:43:41 433

原创 cocos2d-x代理模式

前几天开始学习cocos2d-x,简单的搭建起环境后,进入它的main函数入口开始查看

2015-05-26 12:01:51 580

《Real-Time Rendering 3rd》 提炼总结.pdf

毛星云大神的实时渲染的精彩提炼总结,对照这原书看,能有事半功倍的效果

2018-03-12

Programming in Lua中文第三版

lua 是一个很符合我的审美观的语言:简洁、高效。      我向所有 C 出身却想学习一本动态语言的程序员推荐 lua 。因为它有所有动态语言的优点。在我看来,那指 gc , closure , 高效的 string 和字典 。这些都是直接用 C 来写程序很难实现的。      但是 lua 又没有 python , ruby 的繁杂 , 学习曲线要缓和的多。对于想研究虚拟机实现,并希望洞察脚本背后机器到底干了些什么的 C 程序员来说,了解 lua 的实现比其他动态语言要简单的多。      而 lua 本身的简洁却无损它的高效,某些评测报告中 lua 不如别的动态语言,仅仅是因为它没有提供一些原生的功能而已。而这些完全可以自己用 C 去写一个扩展来补偿。      这本书对于 lua 学习者非常的重要,是因为,lua 毕竟不是 C ,它是一门独立的语言,有自己特别的处理问题的方法。这本书是 lua 的作者亲自所写,足以展示 lua 语言的巧妙。其中的内容非 lua 的官方手册所能取代。

2015-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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