更新时间:2022-08-22 12:18:26
申明将被程序用到的函数、变量和定义类型(包括:常量、类定义、模板定义……)
正确使用头文件
头文件中应该只包含函数和变量的申明,而不是定义。
在 main.cpp
中
int mousex;
中
如果多个cpp文件include了一个定义了变量的头文件,那么你将看到下面的错误信息
第2点:
在 main.cpp中
int mousey=0;
中
如果在头文件中初始化变量,那么编译器会认为这是一个定义,于是出现如下的错误信息:
为了避免重定义,***把头文件用以下的定义包含起来(现在编译器如VC++.net也可以用#pragma once代替)
#ifndef __HEADERS_H__#define __HEADERS_H__.code.#endif __HEADERS_H__
匈牙利命名法
为了帮助程序员记忆变量的类型,Charles Simonyi发明了匈牙利命名法。使用它可以一目了然的在浩瀚的代码海洋中识别出变量的类型。
前缀
类型
例如
b
布尔型
bGameOver
by
Byte或Unsigned Char
byChoice
c
Char
cYesNo
cx / cy
尺寸
cxWidth
dw
DWORD, Double Word 或Unsigned Long
dwCounter
fn
函数
fnGetMeOver
h
Handle
hWindow
i
int (Integer)
iCounter
l
Long
lCounter
n
Short int
nChange
p
指针
pMakeChoice
s
String
sName
sz
以0结尾的字符串
szName
w
WORD Unsigned int
wCounter
x, y
坐标
x
过长的变量或函数名也是不可取的(有时简直就是噩梦)
议尽可能少用全局变量,因为不正确的是用很容易引起和局部变量的混淆,如:
int j=756;
局部变量的定义:
静态分配和动态分配:不好的风格:struct DosFile_t{char * name;int id;}
不要认为一个变量在定义出来后就已经被付值为0了,记住手动付0给它们,如果是结构就用memset将其全部清0int j=0;DosFile_t * dfFileList;dfFileList=(dfFile*)malloc(sizeof(dfFileList)*8);memset(dfFile,0, sizeof(dfFileList)*8);