
语言 编码 程序设计
峻峰飞阳
每一分钟让思维跳跃驰骋,多警醒,少麻木,多联想,少沉思,多类比,少钻尖,多读书,多总结。
展开
-
c++ 时间类型详解(time_t和tm)
原文:http://blog.youkuaiyun.com/love_gaohz/article/details/6637625Unix时间戳(Unix timestamp),或称Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。Unix时间戳不仅被使用在Unix 系统、类U转载 2017-04-24 16:24:42 · 1137 阅读 · 0 评论 -
sqlite判断表或者字段是否存在
如何判断sqlite中的数据库表或者字段是否存在,方法是通过sqlite_master表。sqlite_master表结构如下:[sql] view plain copy CREATE TABLE sqlite_master ( type TEXT, name TEXT, tbl_name TEXT, root转载 2017-04-30 16:23:02 · 6596 阅读 · 1 评论 -
C++虚继承的概念
http://blog.youkuaiyun.com/wangxingbao4227/article/details/6772579C++中虚拟继承的概念为了解决从不同途径继承来的同名的数据成员在内存中有不同的拷贝造成数据不一致问题,将共同基类设置为虚基类。这时从不同的路径继承过来的同名数据成员在内存中就只有一个拷贝,同一个函数名也只有一个映射。这样不仅就解决了二义性问题,也节省了内存转载 2017-04-28 16:56:33 · 364 阅读 · 0 评论 -
学习UML实现、泛化、依赖、关联、聚合、组合
类之间的关系种类:Realization(实现), Generalization(泛化),Dependency(依赖)、Association(关联)、Aggregation(聚合)、Composition(合成或组合)。 其中,Aggregation(聚合)、Composition(合成)属于Association(关联),是特殊的Association关联关系。实现(Realiza转载 2017-03-06 11:04:35 · 448 阅读 · 1 评论 -
C++11改进我们的程序之简化我们的程序
这次要讲的是:c++11中的bind和functionstd::function它是函数、函数对象、函数指针、和成员函数的包装器,可以容纳任何类型的函数对象,函数指针,引用函数,成员函数的指针。以统一的方式处理函数、函数对象、函数指针、和成员函数。允许保存和延迟执行函数。函数和成员函数作为functionvoid G();struct A{void转载 2016-12-27 09:13:32 · 515 阅读 · 0 评论 -
iOS开发之protocol和delegate
protocol——协议协议是用来定义对象的属性,行为和用于回调的。 协议中有两个关键字@private和@optional,@private表示使用这个协议必须要写的方法,@optional表示可选的方法,用不到可以不写。就像UITableView,它有两个协议:UITableViewDelegate和UITableViewDataSource,UITableViewDel转载 2016-09-11 11:28:09 · 378 阅读 · 0 评论 -
C++中的typeid关键字
用以返回一个变量或数据类型的“类型”。用法如下:coutint a;cout输出如下:intint如果有类A,且有虚函数,类B,C,D都是从类A派生的,且都重定义了类A中的虚函数,这时有类A的指针p,再把对象类B的对象的地址赋给指针p,则typeid(p).name()将返回的类型将是A*, 因为这里的p表示的是一个指针, 该指针是类型为A的指针, 所以返回转载 2016-05-05 14:11:20 · 548 阅读 · 0 评论 -
std list/vector sort 排序就这么简单
网上江湖郎中和蒙古大夫很多,因此,此类帖子也很多。关于排序,我还真没研究过,看了江湖郎中和蒙古大夫的帖子,搞了半天不行,所以,自己研究了一下,如下:三种方式都可以,如重写1、容器中是对象时,用操作符2、容器中是对象指针时,用()和比较函数排序都可以,比较函数参数是指针。3、list用成员方法sort4、vector用sort函数 [c转载 2016-05-05 14:10:17 · 1992 阅读 · 0 评论 -
lambda匿名函数使用中的坑
void RoleManager::selectRole(const std::string &roleUid, const CallbackFunc &callback){ ValueMap opData; opData["op"] = "selectrole"; opData["roleuid"] = roleUid; Remote::getInst原创 2016-04-28 15:39:07 · 1085 阅读 · 0 评论 -
wait和notify在锁竞争中的执行顺序
sleep就是正在执行的线程主动让出cpu,cpu去执行其他线程,在sleep指定的时间过后,cpu才会回到这个线程上继续往下执行,如果当前线程进入了同步锁,sleep方法并不会释放锁,即使当前线程使用sleep方法让出了cpu,但其他被同步锁挡住了的线程也无法得到执行。wait是指在一个已经进入了同步锁的线程内,让自己暂时让出同步锁,以便其他正在等待此锁的线程可以得到同步锁并运行,只有其他线程调转载 2015-12-28 10:13:06 · 1512 阅读 · 0 评论 -
初窥c++11:lambda函数及其用法
为什么需要lambda函数匿名函数是许多编程语言都支持的概念,有函数体,没有函数名。1958年,lisp首先采用匿名函数,匿名函数最常用的是作为回调函数的值。正因为有这样的需求,c++引入了lambda 函数,你可以在你的源码中内联一个lambda函数,这就使得创建快速的,一次性的函数变得简单了。例如,你可以把lambda函数可在参数中传递给std::sort函数#in转载 2015-06-14 20:33:01 · 517 阅读 · 0 评论 -
Covariant return type
class Shape { public: virtual double area() const = 0;};class Circle : public Shape { public: float area() const; // error! different return type };int转载 2015-05-21 10:46:09 · 2805 阅读 · 0 评论 -
C++的新特性
介绍 也许你已经意识到了,在ISO 标准中C++语言已经被更新了。对于新的C++ 语言的编码名字已经改为C++0x, 许多编译器都已经介绍了它的一些特性。这个指南将尝试给你介绍C++ 语言的新特性。请注意,尽管这些特性已经应用到其他的编译器上,但我只在 Visual C++ 2010 编译器上解释一些新的特性。在其他编译器上绝对的语法规则我可不敢解说。 这篇文章转载 2015-04-30 22:55:07 · 952 阅读 · 0 评论 -
cmake 链接动态链接库
使用相对路径的时候,你要让cmake能够搜索到找到你动态库,就像直接使用gcc/g++来链接的时候一样,要使用-L来指定第三方库所在路径。cmake可以使用 LINK_DIRECTORIES 命令来指定第三方库所在路径,比如,你的动态库在/home/myproject/libs这个路径下,则通过命令:LINK_DIRECTORIES(/home/myproject/libs)把该路径添...转载 2019-04-08 10:17:20 · 10681 阅读 · 0 评论