
c++
文章平均质量分 77
freerock
这个作者很懒,什么都没留下…
展开
-
C/C++ 程序设计员应聘常见面试试题深入剖析
C/C++ 程序设计员应聘常见面试试题深入剖析 1.引言 本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。 许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strcpy函数都可看出面试者在技术上究竟达到了怎样的程度,我们能真正写好一个strcpy函转载 2006-09-23 16:00:00 · 979 阅读 · 0 评论 -
面向对象的应用服务层设计
面向对象的应用服务层设计 ——--再谈Websharp中间件的设计策略作者:孙亚民前言 N层的应用软件系统,由于其众多的优点,已经成为典型的软件系统架构,也已经为广大开发人员所熟知。在一个典型的三层应用软件系统中,应用系统通常被划分成以下三个层次:数据库层、应用服务层和用户界面层。如下图所示: 其中,应用服务层集中了系统的业务逻辑的处理,因此,可以转载 2007-08-09 11:15:00 · 1092 阅读 · 0 评论 -
C++ 事件机制实现
事件是面向组件开发的必要特性之一,但C++不直接支持事件,没关系,我自己实现了一个,感觉很好用,分享给大家! 最开始打算用函数指针模拟事件,但由于C++中成员函数指针不能和void*相互强转,而且 typedef中不能含有模板,所以才不得已以接口继承实现。这样效果也不错 :)一. 先看看事件接口定义和实现#ifndef IEVENT_H#define IEVENT_H/* 以下各基础转载 2007-08-09 10:13:00 · 1941 阅读 · 1 评论 -
超强的指针 *
C 语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的 内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相 反的。右左法则的英文原文是这样说的:The right-left rule: Start readi转载 2007-08-09 10:18:00 · 640 阅读 · 0 评论 -
STL algorithm之count、find、binary_search、lower_bound、upper_bound和equal_range的区别
你要寻找什么,而且你有一个容器或者你有一个由迭代器划分出来的区间——你要找的东西就在里面。你要怎么完成搜索呢?你箭袋中的箭有这些:count、count_if、find、find_if、binary_search、lower_bound、upper_bound和equal_range。面对着它们,你要怎么做出选择?简单。你寻找的是能又快又简单的东西。越快越简单的越好。暂时,我假设你有一对指转载 2007-08-09 10:47:00 · 1480 阅读 · 1 评论 -
仅通过崩溃地址找出源代码的出错行
作为程序员,我们平时最担心见到的事情是什么?是内存泄漏?是界面不好看?……错啦!我相信我的看法是不会有人反对的——那就是,程序发生了崩溃!“该程序执行了非法操作,即将关闭。请与你的软件供应商联系。”,呵呵,这句 M$ 的“名言”,恐怕就是程序员最担心见到的东西了。有的时候,自己的程序在自己的机器上运行得好好的,但是到了别人的机器上就崩溃了;有时自己在编写和测试的过程中就莫名其妙地遇到了非法操作转载 2007-08-09 11:18:00 · 620 阅读 · 0 评论 -
正则表达式教程
引言 正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来:(1)检查一个串中是否含有符合某个规则的子串,并且可以得到这个子串;(2)根据匹配规则对字符串进行灵活的替换操作。 正则表达式学习起来其实是很简单的,不多的几个较为抽象的概念也很容易理解。之所以很多人感觉正则表达式比较复杂,一方面是因为大多数的文档没有做到由浅入深地讲解,概念上没有注意先后顺序转载 2007-08-29 09:39:00 · 438 阅读 · 0 评论 -
C语言-time.h从头学
本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。 关键字:UTC(世界标准时间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元) 1.概念 在C/C转载 2007-09-03 11:19:00 · 692 阅读 · 0 评论 -
vc2005配置QT4环境
vc2005配置QT4环境 作者: 陈原一直比较佩服那些搞GCC的家伙,今天也想玩玩跨平台的c++,当然就不能用MFC了,看看目前的GUI,感觉比较好的算QT了. 还好现在QT4有开源版本了.今天搞了半天终于成功.下载软件QT4: http://wftp.tu-chemnitz.de/pub/Qt/qt/source/qt转载 2007-10-29 15:58:00 · 2323 阅读 · 0 评论 -
非常不错的一段C++代码
//file name: NoInherit.htemplate class NoInherit_; template class A >class NoInherit_ >{private: friend A; friend T; NoInherit_(){}}; template class NoInh转载 2007-10-15 09:27:00 · 1297 阅读 · 0 评论 -
VS2005下编译LLMozLib
本系列的上一篇文章概要性介绍了 IBM® WebSphere® Service Registry and Repository 和 IBM WebSphere Process Server 如何用于服务消费治理。本文将描述一些实现细节,向您介绍如何自定义 WebSphere Service Registry and Repository 来支持服务消费治理,如何使用 WebSphere Proce转载 2008-01-21 11:42:00 · 925 阅读 · 0 评论 -
构建面向对象的应用软件系统框架
孙亚民 目录第一部分 综述 4第1章 本书会讨论什么内容 5第2章 系统的分层结构 82.1.简述 82.2.设计的原则和评判标准 92.3.应用服务层的内容 102.4.数据实体的表示 112.5.数据的存取方式 152.6.业务逻辑的处理 182.7.业务服务的提供 202.8.层的部署和层间交转载 2007-08-09 11:13:00 · 4365 阅读 · 0 评论 -
用STL流操作文件
templateclass T>class Prin...{public: void operator () (T v)...{coutvendl;}};fstream f("e:/c++lib/1.txt", ios::in);istream_iteratorchar> be = f;istream_iteratorchar> en;f.close();vectorchar> v(be转载 2007-08-09 10:48:00 · 1171 阅读 · 0 评论 -
ATL7窗口类剖析
目录:ATL7窗口类剖析... 1目录:... 1前言:... 1第一章 HWND和CWindow类... 1Create成员函数:... 2使用CWindow类... 3第二章 CWindowImpl类... 4ProcessWindowMessage与消息映射宏... 4窗口创建与消息路由... 6窗口转载 2007-08-03 09:44:00 · 1433 阅读 · 1 评论 -
C++程序员经常问的11个问题-
这篇文章收了好长时间,但还是觉得贴出来,作为收藏,在网上这样的浮躁环境,很少能认认真真地看这样长的文章,有时间我也要把《Effective C++》的读书笔记作出来。以下是原文:下面的这些要点是对所有的C++程序员都适用的。我之所以说它们是最重要的,是因为这些要点中提到的是你通常在C++书中或网站上无法找到的。如:指向成员的指针,这是许多资料中都不愿提到的地方,也是经常出错的地方,甚至是对一些转载 2006-11-02 10:13:00 · 856 阅读 · 0 评论 -
C语言宏定义技巧(常用宏定义)
1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移植。 typedef unsigned char boolean; /* Boolean value type. */ typedef unsigned long转载 2006-11-18 19:39:00 · 1181 阅读 · 0 评论 -
编写高效的C代码
编写高效的C代码原文标题:Writing Efficient C and C Code Optimization原文地址:http://www.codeproject.com/cpp/C___Code_Optimization.asp原文作者:Koushik Ghosh 译文作者:zhigang前言前段时间,我开发了一个轻量级的JPEG库,用来在某种移动设备上不失真地显示图像。我注意转载 2006-07-25 13:28:00 · 1004 阅读 · 0 评论 -
对c/c++可变参数表的深层探索
C/C++语言有一个不同于其它语言的特性,即其支持可变参数,典型的函数如printf、scanf等可以接受数量不定的参数。如: printf ( "I love you" ); printf ( "%d", a ); printf ( "%d,%d", a, b ); 第一、二、三个printf分别接受1、2、3个参数,让我们看看printf函数的原型: int prin转载 2006-12-01 20:31:00 · 913 阅读 · 0 评论 -
Scott Meyers给出的他认为C++史上最强的五篇文章
下面是Scott Meyers给出的他认为C++史上最强的五篇文章,最早的也要到97年了,反正除了Template Metaprograms有点印象其它是都没看过,打算抽时间把这些大牛推荐的Non-Book Publications再消化一下。 Programming in C++, Rules and Recommendations by Mats Henricson and Erik Ny转载 2006-08-22 11:06:00 · 2647 阅读 · 0 评论 -
《C++程序设计语言(特别版)》忠告(advice)部分
这里是一组在你学习C++的过程中或许应该考虑的"规则"。随着你变得更加熟练,你将能把它转化为某种更适合你的那类应用系统或者你自己的程序设计风格的东西。它们有意被写得很简单,因此都缺乏细节。请不要太拘泥于它们的字面意义。要写出一个好程序需要智慧、品味和耐性。你不会第一次就能把它搞好的。试验!转载 2007-01-09 13:07:00 · 696 阅读 · 0 评论 -
C++字符串完全指南
前言字符串的表现形式各异,象TCHAR,std::string,BSTR等等,有时还会见到怪怪的用_tcs起头的宏。这个指南的目的就是说明各种字符串类型及其用途,并说明如何在必要时进行类型的相互转换。在指南的第一部分,介绍三种字符编码格式。理解编码的工作原理是致为重要的。即使你已经知道字符串是一个字符的数组这样的概念,也请阅读本文,它会让你明白各种字符串类之间的关系。指南的第二部转载 2007-01-13 00:36:00 · 747 阅读 · 0 评论 -
内存对齐与ANSI C中struct型数据的内存布局
当在C中定义了一个结构类型时,它的大小是否等于各字段(field)大小之和?编译器将如何在内存中放置这些字段?ANSI C对结构体的内存布局有什么要求?而我们的程序又能否依赖这种布局?这些问题或许对不少朋友来说还有点模糊,那么本文就试着探究它们背后的秘密。 首先,至少有一点可以肯定,那就是ANSI C保证结构体中各字段在内存中出现的位置是随它们的声明顺序依次递增的,并且第一个字段的首地址转载 2007-01-13 19:14:00 · 602 阅读 · 0 评论 -
深入理解C语言指针的奥秘
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*ptr; (2)char*ptr; (3)int**ptr; (4)int(*ptr)[3]; (5转载 2007-01-22 13:28:00 · 5263 阅读 · 0 评论 -
sprintf你知道多少
在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。sprintf 是个变参函数,定义如下:int sprintf( char *buffer, const char *format [, arg转载 2007-01-23 13:20:00 · 1493 阅读 · 0 评论 -
用例子详细介绍各种字符集编码转换问题
本文背景:本人在编程时需要匹配字符串,由此想到了如果文件是各种字符编码的话,匹配结果有可能不正确,那么,如何判断不同的字符集?如何在不同字符集之间做转换?对于UNICODE编码逐渐通用的情况下,我们软件人员如何从容应对? 本文首先对常用字符集进行总结,然后在字符集的显示及转换上以实例介绍,最后总结了编程中遇到的编码问题。本文目的:对字符集编码做详细介绍,关键配以实例讲解,降低问题的复杂转载 2007-12-18 10:24:00 · 1546 阅读 · 0 评论