当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: (1)“我的程序都是对的,可结果不对” 想想你的周围,是不是也有人说这样的话?如果你也曾经说过,那就此打住,不要再说这句话,因为这句话只会显示说话者的无知。
 

 

 ·visual c++实现图形特技    »显示摘要«
    摘要:本文就visual c++ 6.0中实现图形的各种显示技巧的原理及具体方法做些探讨。 基本原理 在visual c++6.0中,显示位图的方法及过程如下: 1. 显示程序资源中的位图(位图的所有数据均存在于可执行文件中) (1)从资源中装入位图 ● 定义位图对象数据成员cbitmap m_bitmap; ● 调用cbitmap成员函数loadbitmap(),如m_bitma......
 ·c/c++头文件一览    »显示摘要«
    摘要:c、传统 c++#include //设定插入点#include //字符处理#include //定义错误码#include //浮点数处理#include   //文件输入/输出#include   //参数化输入/输出#include  //数据流输入/输出#include //定义各种数据类型最值常量#include //定义本地化函数#include  //定义数学函数#include ......


C/C++编程新手错误分析(1)

 

(1)“我的程序都是对的,可结果不对”

(2)“程序=算法+数据结构” 【程序编程相关:磁盘阵列海量存储方案

想想你的周围,是不是也有人说这样的话?如果你也曾经说过,那就此打住,不要再说这句话,因为这句话只会显示说话者的无知.既然程序都是对的,那为什么结果不对? 【推荐阅读:NAS海量存储解决方案

程序 = 对象+ 消息 【扩展信息:固态驱动器访问存储的速度是否更快一些?

如果刚刚学完c语言,我们说这样的话,完全可以理解,而且可以说是正确的.但是如果你是一位即将从事c/c++编程的程序员,那么很遗憾,这个说法只能判错,殊不知,世界上还有另一种说法:

“程序=算法+数据结构”只对面向过程的语言(c)成立,而对面向对象的语言(c++),则只能表述为“程序=对象+消息”.传统的过程式编程语言以过程为中心以算法为驱动,面向对象的编程语言则以对象为中心以消息为驱动.这里的消息是广义的,对象a调用了对象b的成员函数,可看作对象a给b发消息.

(3)“程序编出来,运行正确就行了”

运行正确的程序并不一定是好程序,程序员时刻要牢记的一条就是自己写的程序不仅是给自己看的,要让别人也能轻易地看懂.很遗憾,许多的编程新手不能清晰地驾驭软件的结构,对头文件与实现文件的概念含糊不清,写出来的程序可读性很差.

c程序采用模块化的编程思想,需合理地将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求,在模块的划分上主要依据功能.模块由头文件与实现文件组成,对头文件与实现文件的正确使用方法是:

规则1 头文件(.h)中是对于该模块接口的声明,接口包括该模块提供给其它模块调用的外部函数及外部全局变量,对这些变量与函数都需在.h中文件中冠以extern关键字声明;

规则2 模块内的函数与全局变量需在.c文件开头冠以static关键字声明;

规则3 永远不要在.h文件中定义变量;

许多程序员对定义变量与声明变量混淆不清,定义变量与声明变量的区别在于定义会产生内存分配的操作,是汇编阶段的概念;而声明则只是告诉包含该声明的模块在连接阶段从其它模块寻找外部函数与变量.
...   下一页
 ·c++代码优化方法(1)    »显示摘要«
    摘要:在c++层次进行优化,比在汇编层次优化具有更好的移植性,应该是优化中的首选做法。 确定浮点型变量和表达式是 float 型 为了让编译器产生更好的代码(比如说产生3dnow! 或sse指令的代码),必须确定浮点型变量和表达式是 float 型的。要特别注意的是,以 ";f"; 或 ";f"; 为后缀(比如:3.14f)的浮点常量才是 float 型,否则默认是 double 型。为了避免 floa......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE