asm, c, c++ are my all
-- Core In Computer
posts - 139,  comments - 123,  trackbacks - 0
[转] C++语录 - 基本教义派

1。如果C函数的参数为空,其原形必须含关键字void,而c++可有可无!
2。函数之所以可以能递归,是因为每个函数被调用时,都会把参数和其他的局部对象复制到一块专用的内存区域,而且同一个函数的每一个执行进程都有一个单独的复制
3。exter "c"
{                              // 这是个连接说明
 #include "mychdr.h"  // 告诉c++ 库 这是个用C编译的函数
}
4。C++采用名字重组技术,给编译器内部的函数标识符重命名,重组的函数名包含了指定函数的返回植类型和参数类型的符号!
5。自动储存的类型修饰符指定一个局部变量是自动的,即每次执行到定义该变量的语句块时,都将为该变量在内存中产生一个新的副本,并对其进行初始化。
6。静态储存类型初始化值只在语句块第一次执行时其作用,在随后的运行过程中,变量将保持语句块上一次执行的值!
7。static 储存类型修饰符使得函数和变量的标识符对于连接到同一个程序的其他源代码文件而言是不可见的。
8。寄存器变量的地址是无法取得的,因为大多数计算机的硬件寄存器都不占内存地址。
9。C++程序中,默认情况下,函数的所有参数都是以传值方式,即把实参的一个副本复制到被调用函数的形参中。
10。在编译器内部,用一个字符数组来表示字符串常量,对字符串的使用实际上就是在引用它的内部地址,所以把字符串给字符型指针实际上就是把常量的地址赋给指针!
11。当函数的形参是指向非const 型变量的指针时,不能用const型变量的地址做形参!
12。任何地址都可以赋值给void 型指针,C++允许任何类型的指针自动转换成 void型!
13。typedef 的作用是给一个已存在的类型起个别名!
14。指针是储存地址的变量,地址是相对较小的数据单元(在32机系统中占四个字节)它储存另一个数据的地址!
15。# undef 预处理指令使得以定义的宏在以后的代码中无效!
16。不带参数或所有参数都有默认值的构造函数叫做默认构造函数,实例化对象数组必须有默认的构造函数;如果类中之少有一个构造函数,编辑器将不在提供默认的构造函数!
17。静态成员只能在类中申明,必须在类外定义,并且静态成员只能存在唯一一个实例,即使没有任何类的实例,静态成员也是已经存在的,类的所有实例都可以使用他,他属于整个类!
18。静态成员函数与一般成员函数的区别:静态成员函数没有this指针,因此他无法访问非静态成员!一般的成员函数隐含this指针
19。初始化和赋值的区别是:初始化是创建一个新的对象,然后用已有的的对象去初始化,赋值是两个都存在的对象!
20。常量数据成员和引用数据成员必须使用构造函数的参数初始化表来初始化,而不能赋值!
21。对象被申明为常量,那么该对象就不可以调用类中任何非常量型的成员函数。
22。mutable 修饰符申明的数据成员,这样一个常量型的成员函数就可以修改它的值!
23。class member以他们在class 内的申明次序来初始化和他们在member initialization list 中出现的次序无关!
24。string &operation =(const string & rhs);// 意思是将一个常 string  指定给另一个string 
25。string &operator =(const char *rhs);//意思是将一个常 char * 指定给一个string 
26。避免传回内部数据的handls;
27。public继承是一种( isa),所以任何事情只要对base class  而言是真,就一定对其 derived class  为真。
28。纯虚函数的两个接口,他们必须被任何“继承了他们”的子类重新申明,他们在抽象类中通常没有定义!
29。纯虚函数的申明主要是为了让derived class 继承函数的接口;
         虚函数的申明主要是为了让derived class 继承函数的接口及其缺省行为
        成员函数(非虚)的申明主要是为了让derived class 继承函数的实现,表示在 derived  class 中希望不要有不同的行为,即不要重新定义继承而来的非虚成员函数!
30。绝对不要重新定义继承而来的参数值,因为虚拟函数系动态绑定,而缺省参数却是静态绑定的!
31。对象的静态型别是程序申明它时所采用的型别。对象的动态型别是指对象目前所代表的型别,表现出一个对象的行为模式!
40:getlin(s,bufsize)表示读取bufsize-1个字符给s如果遇到换行符就停下来,添加一个空字节,丢弃换行符!
41。编辑器将空白字符默认为分隔符。
42。不允许重载系统中预定义的操作,因此重载操作中至少有个操作数是用户自定义类型!
43。全局const申明默认情况下是内部连接,而在c 中他们是外部连接,如果希望一个const 对象具有外部连接特性,就必须使用关键字“extern”
44.除了寄存器变量以外,程序中的所有对象都存在内存中的。
45。在c++中给void型指针赋值时,不用强制类型转换是一种错误!
posted on 2006-09-02 19:57 Jerry Cat 阅读(389) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理



<2006年9月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

常用链接

留言簿(7)

随笔档案

最新随笔

搜索

  •  

最新评论

阅读排行榜

评论排行榜