C++
Muf
这个作者很懒,什么都没留下…
展开
-
C++中如何让一个类不能被继承
[C++实现Sealed类] 今天看到《软件研发5》有一篇译自CUJ的文章“使类不可继承”,方法很好,但有几个毛病: 1. 正如译者说的,还是有办法进行继承,虽然方法有点变态 2. 最主要的毛病却是,这种办法会造成运行时的开销。因为至少会增加VTABLE指针。 所以,针对以上两个问题,作了改动,如下: #ifdef _DEBUG namespace internalSealed {原创 2004-06-24 10:22:00 · 4070 阅读 · 1 评论 -
C++指针探讨 (四) 函数对象
C++指针探讨 (四) 函数对象 函数对象不是函数指针。但是,在程序代码中,它的调用方式与函数指针一样,后面加个括号就可以了。 这是入门级的随笔,说的是函数对象的定义,使用,以及与函数指针,成员函数指针的关系。 沐枫小筑 函数对象实质上是一个实现了operator()--括号操作符--的类。 例如:Code highlighting produced by原创 2007-11-28 14:17:00 · 1598 阅读 · 2 评论 -
VC2008 的几个新东西
VC2008 的几个新东西 关于.net方面,已经有许多人在关注了,我就关注一下,VC2008方面的新东西吧。1. 晕倒,实证后,没有增加tr1库(仅增加了tr1::hexfloat).不过据说2008年会出一个新补丁,里头会增加支持tr1。2. 对于模板的>>符号,中间不再需要空格了。3. 增加了for each(T& in A){}语法--这个不算是改进吧,估计是原创 2007-11-28 14:16:00 · 1888 阅读 · 0 评论 -
从for到foreach
从for到foreach 一直在使用C/C++,对于循环语句while、do while、for,对于for情有独钟,因为其简洁、清晰、灵活。访问数组类型的变量,只有for写出来的语句是最易于阅读的,如:Code highlighting produced by Actipro CodeHighlighter (freeware)http://原创 2007-11-28 14:12:00 · 1500 阅读 · 0 评论 -
从赋值到初始化
从赋值到初始化 C语言确实很优雅,整个语言的设计简洁一致。而在C++中,有一个让人诟病的问题就是变量初始化的不一致性。 C语言中的初始化,都是用花括号进行,简单美观:int array[] = {1,2,3,4,5};struct Point point = {2, 3};struct Point arrPoint[] = { {2,3}, {4,5}, {原创 2007-11-28 14:10:00 · 1192 阅读 · 0 评论 -
让C++源码和C#源码一起生成单一的Assembly
本文提供了一个方法,让C++源码和C#源码一起编译链接成一个单一的Assembly。 由于C++提供了IJW方法,允许将旧有C++代码也编译成托管代码,因此这篇小文可以用极小的工作量来彻底解决所有C++遗留代码移植到.NET的问题。 这个方法,再加上前次的小文《您也使用托管C++吗?》,就可以把C++遗留代码移植到.NET的所有方法一网打尽了。 好了,言归正传。 假设一个很简单原创 2006-04-15 00:16:00 · 4749 阅读 · 2 评论 -
您也使用托管C++吗?
转向.NET后,手头上往往仍有旧的模块要重用。也许这些模块是Delphi写的,也许是C/C++写的,或者是其它编程语言……为了能把它们移植到.NET下,或者是在.NET中调用,To be or not to be, that is a question。 在这里,我笔记了几个在工作中遇到的几个场景。不过,这里不包括完全使用C#来重写原来用C++编写的程序这种变态的需求。当你被要求做这种事的时原创 2006-04-10 09:47:00 · 12764 阅读 · 13 评论 -
C++指针探讨 (三) 成员函数指针
C语言的指针相当的灵活方便,但也相当容易出错。许多C语言初学者,甚至C语言老鸟都很容易栽倒在C语言的指针下。但不可否认的是,指针在C语言中的位置极其重要,也许可以偏激一点的来说:没有指针的C程序不是真正的C程序。 然而C++的指针却常常给我一种束手束脚的感觉。C++比C语言有更严格的静态类型,更加强调类型安全,强调编译时检查。因此,对于C语言中最容易错用的指针,更是不能放过:C++的指针原创 2006-04-10 09:43:00 · 1898 阅读 · 0 评论 -
C++指针探讨 (二)函数指针
试了几十次,一直没办法在CSDN上发表成功这篇文章,只好留下镜象的链接了:http://www.teeta.com/ttweb/?U=ly4cn&Op=Log&Do=Detail&KeyID=25324原创 2005-05-28 10:30:00 · 2169 阅读 · 0 评论 -
C++指针探讨 (-) 数据指针
指针,在C/C++语言中一直是很受宠的;几乎找不到一个不使用指针的C/C++应用。用于存储数据和程序的地址,这是指针的基本功能。用于指向整型数,用整数指针(int*);指向浮点数用浮点数指针(float*);指向结构,用对应的结构指针(struct xxx *);指向任意地址,用无类型指针(void*)。 有时候,我们需要一些通用的指针。在C语言当中,(void*) 可以代表一切;但原创 2005-05-11 20:59:00 · 2330 阅读 · 0 评论 -
LuaWrapper For C++ 发布
在C++中集成Lua脚本作者: 沐枫 (第二人生成员)版权所有转载请注明原出处主页:第二人生 http://www.d2-life.com http://www.d2-life.com/LBS/blogview.asp?logID=41为什么要用Lua作脚本? 使用Lua作脚本,主要是因为它小巧玲珑(体积小,运行快),而且它的语法又比较简单明了。不过,使用LuaAPI将Lua引擎集成到程序中原创 2004-07-24 21:11:00 · 6218 阅读 · 2 评论 -
理解 《混沌 In C++::是类型?还是函数调用?》
原文及评论见: 《混沌 In C++::是类型?还是函数调用?》http://blog.csdn.net/Jinhao/archive/2004/06/29/29021.aspx 看了原文的评论,发现有不少人误解“函数声明怎么能当形参”。一开始,我也是一头雾水,但后来总算是理解了,就在这里稍微总结一下,也算是给自已提个醒吧。 作者的代码我在 VC++.NET2003编译过。就目前来说,微软原创 2004-07-02 10:51:00 · 2819 阅读 · 1 评论 -
VC中的一个很奇怪的问题--关于C4244
VC中的一个很奇怪的问题--关于C4244 从VC2003到VC2005,一直有一个很奇怪的问题。 如下的代码:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> short s1 = 0原创 2007-11-30 12:55:00 · 1802 阅读 · 0 评论