本章节主要是对C++基础知识的回顾,不会涉及太简单的知识点,比如=和==的区别,也不会涉及太复杂的知识,比如volatile关键字的作用。
(1) 空间命名规则
#ifndef NAMESPACE_H
#define NAMESPACE_H
// namespaces.h
namespace mycode {
void foo();
}
#endif // NAMESPACE_H
#include "namespace.h"
#include <iostream>
void mycode::foo()
{
std::cout << "foo() called in the mycode namespace" << std::endl;
}
#include "namespace.h"
using namespace std;
using namespace mycode;
int main(int argc, char *argv[])
{
foo();
}
output:
foo() called in the mycode namespace
(2) 变量的定义, 操作符,循环语句全部都是基础知识。
(3) 枚举类型
typedef enum { kPieceTypeKing, kPieceTypeQueen, kPieceTypeRook,
kPieceTypePawm
} PieceT;
(4) Stack 和 Heap的区别
stack分配的空间一般都是程序自动管理,heap用于new分配,delete删除。
(5)综合举例,一个管理员工系统
#ifndef EMPLOYEE_H
#define EMPLOYEE_H
// employee.h
#include <iostream>
namespace Records {
const int kDefaultStartingSalary = 30000;
class Employee {
public:
Employee();
void promote(int inRaiseAmount = 1000);
void demote(int inDemeritAmount = 1000);
void hire();
void fire();
void display();
void setFirstName(std::string inFirstName);
std::string getFirstName();
void setLastName(std::string inLastName);
std::string getLastName();
void setEmployeeNumber(int inEmployeeNumber);
int getEmployeeNumber();
void se