• 4、头文件与类的声明


    • 头文件一般是带有,h或.cpp为扩展名的文件,单也有可能是.hpp或其他甚至没有延伸名,取决于是否不同平台。
    #include<iostream.h>
    #include "complex.h"

    include标准库需要引用<>,include自己的文件需要引用“”。

    • 头文件的防卫式声明:
    #ifndef_COMPLEX_
    #define_COMPLEX_
    
    
    
    
    ...
    
    
    
    #endif

    第一行:判断编写的代码是否定义过COMPLEX这个名词;

    第二行:如果没有,创建一个COMPLEX,然后进入到本体中执行;

    最后一行:结束防卫式声明;

    防卫式声明的作用:第二次再include的时候,由于已经定义过,就不会进入到本体中,防止同一个程序重复含入同一个头文件;

    • 类的声明(面向对象):
    class complex    //class head
    {
    public:    //public访问级别,可以被外界调用
        complex(double r = 0, double i = 0):re(r), im(i){}  //构造函数才有额写法,其他函数没有
        complex& oprator += (const complex&);
        double real() const { return re; }            //class body
        double real() const { return im; }
    private:    //private访问级别,不能被外界直接调用,需要通过方法去调用
        double re, im;
        friend complex&_doap1(complex*, const complex&);
    };

    类里面的数据都应该放在private里面,需要给外界调用的函数放在public里面,自己使用不希望被外界调用的函数也可以放在private里面;

    构造函数:

    1)变量名和类名相同;

    2)没有返回值类型;

    3)创建对象必须要调用其构造函数;

    一个类中可以有一个以上函数名相同,参数不同的函数,这种方法叫做重载(overloading);

    一个初识C++的小白
  • 相关阅读:
    haproxy 2.5 发布
    cube.js sql 支持简单说明
    基于graalvm 开发一个cube.js jdbc driver 的思路
    apache kyuubi Frontend 支持mysql 协议
    oceanbase 资源池删除说明
    基于obd 的oceanbase 扩容说明
    jfilter一个方便的spring rest 响应过滤扩展
    cube.js schema 定义多datasource 说明
    typescript 编写自定义定义文件
    meow 辅助开发cli 应用的工具
  • 原文地址:https://www.cnblogs.com/Real-m/p/13205246.html
Copyright © 2020-2023  润新知