1、如果一个形参具有默认实参,那么它后面的所有形参都必须有默认实参。
2、只有当定义它的函数被调用时才存在的对象称为自动对象。自动对象在每次调用函数时创建和撤销。
3、形参也是自动对象,其占用的存储空间在调用函数时创建,在函数结束时撤销。
4、静态局部变量一旦被创建,在程序结束以前都不会被撤销。定义它的函数被多次调用时,静态局部变量会持续存在并保存它的值。例如下面程序将依次输出1到10。
int count( ) { static int ctr = 0; return ++ctr; } int main( ) { for (int i = 0; i != 10; ++i) cout << cout( ) << endl; return 0; }
5、内联函数应该在头文件中定义,在头文件中加入或者修改内联函数时,使用了该头文件的所用源文件都必须重新编译。
6、编译器隐式地将在类内定义的成员函数当做内联函数。
7、类的成员函数可以访问类的私有成员。
8、每个成员函数都有一个额外的、隐含的形参this。
9、const对象、指向const对象的指针或者引用只能用于调用其const成员函数,如果尝试用它们来调用非const成员函数,则是错误的。
10、在成员函数中,不必显式地使用this指针来访问被调函数所属对象的成员,对这个类的成员的任何没有前缀的引用,都被假定为通过this指针实现的引用。
11、在构造函数形参表括号后的冒号和和花括号之间的代码称为构造函数初始化列表,是一系列成员名,每个成员名后面是括在圆括号里的初始值,多个成员的初始化用逗号分隔。
12、任何程序都仅有一个main函数的实例,main函数不能重载。
13、函数不能仅仅基于不同的返回类型而实现重载。
14、可基于函数的引用形参是指向const对象还是指向非const对象,实现函数重载。因为编译器可以根据实参是否为const来确定调用哪一个函数。当形参以副本传递时,不能基于形参是否为const来实现重载。
15、函数类型由其返回类型以及形参表确定,与函数名无关。
16、用typedef简化函数指针的定义。即在平常的函数定义之前加上typedef,就可以用函数指针名来代表该函数类型了。
17、直接使用函数名等效于在函数名上应用取地址符。可以不需要使用解引用符直接通过函数指针调用函数,当然加上解引用符也无妨,即pf( )跟(*pf)( )等价。
18、函数指针做形参时,以下两种定义方式等价。
int cpplive(int(char *)); int cpplive(int(*)(char *));
19、定义返回返回函数指针的函数相当不容易理解,不用配合typedef来定义就通俗多了,下面两个定义是等价的。
int (*cpplive(int))(int*, int); typedef int (*PF)(int*, int); PF cpplive(int);
除非注明,文章均为CppLive 编程在线原创,转载请注明出处,谢谢。
不敢称高手阿,只是对C++还算熟悉啊.当然可以交换友链. 😛
我回去做好
相对我来说肯定是高手啦,我的链接也做好了,不知道取名为“Adoo Group”对吗?
直接写Adoo的博客啦 😛
OK了:)
😛
C++多久了?
从本站成立到现在吧,之前包括在大学也经常小用下C++,但主要用的还是Linux 下的C。你呢?
C++ primer 看过也有两三遍吧,一本带我入门的书,看着觉得亲切.
哈哈,看来是高手哦,以后请多多指教。能否交换下友情链接呢?