关于通过不含虚析构函数的基类类型的指针删除派生类对象的问题

如题。这问题先得基于一个前提条件:析构函数不含释放其他资源的代码,甚至可以是空函数,甚至甚至都可以干脆的不写。这种情况下是否仍有任何问题。   这个问题的结论是 会导致未定义的行为(但不是内存泄漏那么简单)。具体如何就看编译器的实现了。   我们常用的编译器,如vc、gcc等都是用的尾部追加成员的...

2013-10-05 08:22:44

阅读数 2923

评论数 0

在没有对象的情况下使用decltype和sizeof问题的解决方案

假如声明了一个类型A,想得到其大小,可以写作 sizeof(A) 假如定义了一个A类型的对象o,想得到其大小,可以写作 sizeof(o) 假如声明了一个结构体TAG,内有成员m,想得到其大小,可以写作 sizeof(TAG::m)是吗?不行的。因为现在TAG::m的处

2011-10-01 22:08:34

阅读数 812

评论数 1

[转]wxWidgest: 编程风格指导

http://www.wxwidgets.org/develop/standard.htm#no_ternarywithobjects   --------------------------------------------------------------- Pro

2011-08-10 10:36:33

阅读数 1077

评论数 0

#pragma pack 文章收集

关键内容已标成绿色

2011-07-25 08:03:45

阅读数 762

评论数 0

关于右值引用的粗略研究

右值和右值引用相关要点

2011-07-02 11:05:30

阅读数 829

评论数 0

微软kinect的五个非游戏的应用

<br />http://techland.com/2010/11/26/top-five-uses-for-your-kinect-besides-gaming/<br /> 

2010-12-05 17:20:00

阅读数 583

评论数 0

[转]程序员会犯的10个错误

1 不是为人,而是为编译器写程序; 2 编写巨型函数; 3 高深莫测地优化技巧; 4 使用全局变量; 5 事先不做好规划; 6 “多出一个”(例如一个访问数组的循环中不正确的循环中止条件,导致数组访问越界); 7 压制异常、对错误毁尸灭迹; 8 以纯文本形式存储秘密; 9 不检查用...

2010-12-05 16:52:00

阅读数 961

评论数 0

规范化的C++编程方法备忘录 整数分类的细则

整数

2010-10-10 22:31:00

阅读数 622

评论数 0

[转]字符串编码杂谈

多语种的字符串编码实现简介

2010-07-27 16:03:00

阅读数 656

评论数 0

(转)为什么要用C运行时库的_beginthreadex代替操作系统的CreateThread来创建线程?

1.截取自 http://www.cnblogs.com/s5689412/archive/2006/12/05/582670.html 2.似乎是对《windows核心编程》线程那章的copy & paste ??

2010-06-17 11:03:00

阅读数 790

评论数 0

规范化的C++编程方法备忘录 本地化相关[写中文版软件必看](2)

-从字符串中取字符:对于ASCII及UNICODE(1),方法比较简单,直接用相应的类型变量赋值即可:char c = *pszAscii;wchar_t cw = *pswzUncd;对于多字节:规定每个字符最多为5个字节,因此用一个64位整数表示。然后附上一个长度值。将你要拣出的字符,从首字符...

2010-05-17 21:58:00

阅读数 684

评论数 0

(转)Boost源码剖析之:容器赋值-assign 收藏

原文出处 http://oss.org.cn/?action-viewnews-itemid-3939Boost源码剖析之:容器赋值-assign发布: 2009-4-30 10:18    作者: ECHO    来源:    查看: 99次 相信大多数使用STL的人都是为了使用里面的容器,使用...

2010-05-16 20:03:00

阅读数 557

评论数 0

(转)《如果让我重新读次研究生》——王泛森院士 收藏

一、研究生与大学生的区别    首先跟大家说明一下研究生和大学生的区别。大学生基本上是来接受学问、接受知识的,然而不管是对于硕士时期或是博士时期的研究而言,都应该准备要开始制造新的知识,我们在美国得到博士学位时都会领到看不懂的毕业证书,在一个偶然的机会下,我问了一位懂拉丁文的人,上面的内容为何?他...

2010-05-09 14:44:00

阅读数 497

评论数 0

规范化的C++编程方法备忘录 程序流程(3)

避免条件分离-以下代码不好int aiBuff[15];...for(i = 0; i < 15; i++) aiBuff[i] = 0; 要改成int aiBuff[15];...for(i = 0; i < sizeof(aiBuff) / sizeof(aiBuff[0])...

2010-05-08 17:30:00

阅读数 502

评论数 0

规范化的C++编程方法备忘录 本地化相关[写中文版软件必看](1)

1.字符和字符串-编码:为了将人类定义的文字在计算机中能完整地表示,人们使用逻辑上连续存放的整数表示语句。受历史的影响(早期的计算机是没有考虑国际化的。那是为科学家和高校设计的,字符串存在的目的之一是用尽可能少的字符表达特定环境下的语义。知道意思即可,所以不乏大量的英文缩写、符号与数字的混合体),...

2010-04-30 09:25:00

阅读数 863

评论数 0

规范化的C++编程方法备忘录 常用符号表示方法

-如果系统对某个操作有自己的一套规则,就尽量使用系统提供的库文件中声明过的符号,不要自己去实现它例1:不要在系统要求使用 GET_X_LPARAM(a) 的地方使用 (int)(short)((a) & 0xffff) 取代(如GetMessagePos的返回值)。例2:不要自己实现多字节...

2010-04-30 08:26:00

阅读数 1095

评论数 0

规范化的C++编程方法备忘录 对象管理

    先说一些题外话...  其实并没有“Win64编程”这一说法。只有64位Windows、64位平台、(应用程序的)64位版本。Win32PlatformSDK自从7.0版发布以来就做了修订。支持32/64位一体化代码。微软保证:没有特殊说明的API在32位和64位上都有相同的形式(仅针对库...

2010-04-22 17:36:00

阅读数 612

评论数 0

规范化的C++编程方法备忘录 Windows下线程编程(Rev1.1)

    编译原理、计算机原理的基本内容,我不想重复了。放上些内容,主要是关于理论与实际间的差距。 - 线程间共享变量应该在声明时加入volatile关键字    如果不加会怎样?看以下代码:intptr_t a = 1; // Reset by another thread....while(a)...

2010-04-22 17:33:00

阅读数 477

评论数 0

规范化的C++编程方法备忘录 c++ for windows(2)

DllMain(说明:这不是一个API,但用对它很重要)  详见http://msdn.microsoft.com/en-us/library/ms682583.aspx,(你在自己的MSDN光盘上也可找到。后同,略)需要强调的是Remarks中的"The entry-point fun...

2010-04-22 17:29:00

阅读数 562

评论数 1

规范化的C++编程方法备忘录 c++ for windows

上面几贴的内容会很有用。后面说的假定你已经知道这些东西了。这是一个复杂的系统,需要大量的人做不同的工作... C++和Windows并无本质的联系,但个人认为在操作系统中,Windows的MSDN是C++/C中非常规范的典型例子,不像其他操作系统、非MS公司的windows软件那样,代码编写的随意...

2010-04-22 17:26:00

阅读数 668

评论数 2

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