自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

翻译 Qt元对象机制浅析

Qt的元对象系统基于如下三件事情:1.类:QObject,为所有需要利用原对象系统的对象提供了一个基类。 2.宏:Q_OBJECT,通常可以声明在类的私有段中,让该类可以使用元对象的特性,比如动态属性,信号和槽。 3.编译器:元对象编译器(moc)为每个QObject子对象自动生成必要的代码来实现元对象特性。 moc工具会读入C++的源文件,如果它发现了一个或者多个声明了Q_OBJECT宏的类

2016-06-05 11:35:49 1369

翻译 c++写windows服务程序

winddows服务开发

2016-05-01 15:47:53 871

原创 在类中delete自己会不会有问题??

这个问题很多人都在问,很多人有不同答案,有一点是可以肯定,就是千万别在析构函数中调用delete this,因为会造成死递归(delete this调用后会再次调用析构函数,再次delete this...),但是如果在其他地方调用delete this会不会出问题?有种说法是只要你delete this 后不再使用任何该类的成员变量调用该类的任何成员函数不会有问题。这看起来也确实比较符合逻辑。但是

2016-02-17 21:09:58 1378

原创 从unique_ptr赋值到shared_ptr引起的指针悬空bug

c++相对于其他oop语言最强大也最麻烦的莫过于必须自己处理垃圾回收。内存的随意分配,满篇的各种指针不注意就会出现野指针(悬空指针)或者内存泄露。我最近在维护一个所里的服务器项目时就吃了这个苦头。 当启动服务器后运行一段时间就会崩溃,仔细看输出窗口发现是堆栈被破坏,vs也很友好的提醒exe或者所加载的dll中存在bug(完全是废话嘛)。好的,断定是内存问题,那么应该有三种可能:1、内存越界,2、访

2016-02-17 20:38:56 2017 1

原创 编译 errorC4996错误 -D_SCL_SECURE_NO_WARNINGS

今天项目中使用protocol buffer生成的一个c++文件是时遇到一个编译问题,查看输出窗口后发现是google protocolbuf库中用的std::copy()函数导致的在vs 2012中进行编译会弹出如下信息:error C4996: 'std::_Copy_impl': Function call with parameters that may be unsa

2016-02-17 18:12:17 1731

原创 singleton中的陷阱

单件模式应该是设计模式中运用得最多的模式之一,对于全局性的复用性的对象我们通常会采用单件模式,正是因为单件这种频繁运用的看似简单的模式前段时间在我们的项目中却引发了一个致命性的崩溃bug,因此在这里总结一下,希望能给大家有所帮助。所谓单件模式就是在整个进程运行期间只需要实例化一次为所有运行线程公用的对象。正因为单件可以为多个线程共用所以我们必须要保证它的线程安全性。通常实现单件有两种方式

2016-02-12 21:44:46 324

转载 Connecting C++ and XAML

The Build ProcessFrom a user-facing standpoint, Pages and other custom controls are really a trio of user-editable files.  For example, the definition of the class MainPage is comprised of three f

2015-10-07 19:07:01 1157

翻译 win32中dllexport和dllimport的区别

做过动态链接库或者导出类的coder都知道__declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出类。但是,MSDN文档里面,对于__declspec(dllimport)的说明让人感觉有点奇怪,先来看看MSDN里面是怎

2015-10-01 21:32:15 1713

翻译 敏捷开发流程

Agile——敏捷开发,作为CMM神话崩溃后被引入的一套新的软件开发模式,这几年来被广泛引起关注,并被寄予厚望。敏捷开发在其他业界的应用是否理想不得而知,但以下总结了我所在公司的敏捷开发试验,希望可以达到管中窥豹的目的。敏捷开发宣言——个体和交互 胜过 过程和工具可以工作的软件 胜过 面面俱到的文档客户合作 胜过 合同谈判响应变化 胜过 遵循计划虽然右项也有价值,但

2015-09-11 00:00:24 274

空空如也

空空如也

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

TA关注的人

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