天天看点

C++基础之头文件

    Definition of a class

    ◆ In C++, separated .h and .cpp files are used to define one class.

    ◆ Class declaration and prototypes in that class are in the header file (.h).

    ◆ All the bodies of these functions are in the source file (.cpp).

    The header files

    ◆ If a function is declared in a header file, you must include the header file everywhere the function is used and where the function is defined.

    ◆ If a class is declared in a header file, you must include the header file everywhere the class is used and where class member functions are defined.

     Header = interface

    ◆ The header is a contract between you and the user of your code.

    ◆ The compile enforces the contract by requiring you to declare all structures and functions before they are used.

    Declarations vs. Definitions

    ◆ A .cpp file is a compile unit

    ◆ Only declarations are allowed to be in .h

        ★ extern variables

        ★ function prototypes

        ★ class/struct declaration

    #include

    ◆ #include is to insert the included file into the .cpp file at where the #include statement is.

        ★ #include"xx.h": first search in the current directory, then the directories declared somewhere

        ★ #include<xx.h>: search in the specified directories

        ★ #include<xx>: same as #include<xx.h>

    Standard header file structure

#ifndef HEADER_FLAG
#define HEADER_FLAG
//Type declaration here...
#endif              //HEADER_FLAG
           

    Tips for header

    1. One class declaration per header file

    2. Associated with one source file in the same prefix of file name.

    3. The contents of a header file is surrounded with #ifndef    #define    #endif

cpp

继续阅读