写在前面
之前断断续续学习过c++,但代码风格不够规范,理解也不够深刻,这次打算通过学习侯捷老师的c++系列教程,系统的学习一下c++,这个系列的博客作为学习的一些心得
一、头文件
1. 头文件是什么
例:A.cpp, A.h, B.cpp A.h 头文件 中写入类声明、函数原型、#define; A.cpp实现文件 写入类函数的定义实现; B.cpp调用文件 通过一个宏命令 “#include” 调用A.h中的类和函数等 [注1] 头文件无需编译,只需在源文件预处理时被合并 [注2]#include功能仅是简单的文本替换 [注3]系统头文件用< >, 自定义头文件用" "
#ifndef A_H
#define A_H
#endif
2.简单实例
#ifndef CIRCLE_H
#define CIRCLE_H
class Circle
{
private:
double r;
public:
Circle();
Circle(double R);
double Area();
};
#endif
#include "Circle.h"
Circle::Circle()
{
this->r=5.0;
}
Circle::Circle(double R)
{
this->r=R;
}
double Circle:: Area()
{
return 3.14*r*r;
}
#include <iostream>
#include "Circle.h"
using namespace std;
int main()
{
Circle c(3);
cout<<"Area="<<c.Area()<<endl;
return 1;
}
3.几个特殊情况
(1)static修饰变量、函数可以写在.h文件中 (2)inline内联函数定义可以写在.h文件中 (3)模板类型可以写在.h中,模板在调用时才编译
二、命名空间
区分不同库中相同名称的函数、类、变量
namespace namespace_name {
}
name::code;
using namespace namespace_name;
using std::cout;
|