C++复习与重新学习一
2013-11-17 23:44
253 查看
大学学过c++,但是毕了业一直从事java方面的工作。
最近一个项目用到c++,就重新想拾起来,对比着学习应该会很快。
类与对象
c++的类是声明和实现分开的。声明一般放在.h的头文件中,实现放在.cpp的源文件中。
声明方式
class 类名
{
public :
成员变量和函数;
private :
...
protected:
...
}
类声明中不允许直接对成员变量进行初始化。
如果在类声明中直接实现的成员函数,直接为内联函数。
引入头文件 #include “xxx.h”
定义类的实现时需要在函数前面加上 类名::,类似于这样 void A::test() {...}
使用类的对象时,需先声明,别new,Test test; Test test(1,2); 这样改对象就可以用了。
c++比java构造函数基本类似,但是比java多了析构函数,就是构造函数前加~,当对象销毁时调用。
类里包含别的类的对象时,初始化该类的同时别忘记初始化成员对象。可以在构造函数里这么初始化,Test::"Test(int a):b(a){...} 其中b为成员对象。
类的静态成员和java一样也是使用static,不过要像实现函数那样实现静态数据成员。
友元函数和友元类,friend关键字。意思就是把普通的函数(从c那里继承来的,随处可写的函数)放进类中,但实际上它还是普通函数,访问时不用加类名。也可以把一个类的函数,放进另一个类中,在另一个类中声明该函数为友元函数。该函数就可以访问另一个类的数据成员,意思和安插个间谍差不多。也可以成名友元类,在一个类中写friend class xxx,xxx就是该类的友元类了,友元类是单向的。
常对象和常数据成员,类似java的final,不能改变其值,使用关键字const,常数据成员必须使用构造函数初始化,常对象定义时必须初始化。
类的常成员函数,不能改变数据成员的值,也不能调用该类中不是常成员函数的函数。声明和定义常成员函数的时候const都能省略,写在函数签名的最后。
静态成员函数不能声明为常成员函数。
最近一个项目用到c++,就重新想拾起来,对比着学习应该会很快。
类与对象
c++的类是声明和实现分开的。声明一般放在.h的头文件中,实现放在.cpp的源文件中。
声明方式
class 类名
{
public :
成员变量和函数;
private :
...
protected:
...
}
类声明中不允许直接对成员变量进行初始化。
如果在类声明中直接实现的成员函数,直接为内联函数。
引入头文件 #include “xxx.h”
定义类的实现时需要在函数前面加上 类名::,类似于这样 void A::test() {...}
使用类的对象时,需先声明,别new,Test test; Test test(1,2); 这样改对象就可以用了。
c++比java构造函数基本类似,但是比java多了析构函数,就是构造函数前加~,当对象销毁时调用。
类里包含别的类的对象时,初始化该类的同时别忘记初始化成员对象。可以在构造函数里这么初始化,Test::"Test(int a):b(a){...} 其中b为成员对象。
类的静态成员和java一样也是使用static,不过要像实现函数那样实现静态数据成员。
友元函数和友元类,friend关键字。意思就是把普通的函数(从c那里继承来的,随处可写的函数)放进类中,但实际上它还是普通函数,访问时不用加类名。也可以把一个类的函数,放进另一个类中,在另一个类中声明该函数为友元函数。该函数就可以访问另一个类的数据成员,意思和安插个间谍差不多。也可以成名友元类,在一个类中写friend class xxx,xxx就是该类的友元类了,友元类是单向的。
常对象和常数据成员,类似java的final,不能改变其值,使用关键字const,常数据成员必须使用构造函数初始化,常对象定义时必须初始化。
类的常成员函数,不能改变数据成员的值,也不能调用该类中不是常成员函数的函数。声明和定义常成员函数的时候const都能省略,写在函数签名的最后。
静态成员函数不能声明为常成员函数。
相关文章推荐
- C++最基础的都忘记了,重新学习!!!
- 标准C++复习&学习笔记
- 【C++】学习、复习知识框架
- 重新学习C++
- 重新复习C++笔记
- c++学习总结系列--开始(复习)
- 重新学习C++
- 深度探索C++对象模型复习和学习 第二章:构造函数语义学(The Semantics of Constructors)
- C++重新学习心得(1)(《C++Primer第四版》1-8章)
- 2011/10/05~10/06 c++复习与学习
- 重新学习C++——开启
- 重新要好好学习c++了
- 重新学习..c++
- 深度探索C++对象模型复习和学习 第五章:构造、析构、拷贝、语意学
- C/C++学习总结(复习)
- 深度探索C++对象模型复习和学习 第六章:执行期语意学
- 深度探索C++对象模型复习和学习 第七章:站在对象模型的尖端
- C++ 学习总结 复习篇
- 深度探索C++对象模型复习和学习 第三章 Data 语义学(The Semantics of Data )
- c++对象重新学习之一——股票交易