欢迎光临散文网 会员登陆 & 注册

视觉lifeC++编程实战:入门基础 C++编程实战:进阶提升

2023-07-10 13:13 作者:自爆鬼才比企谷  | 我要投稿

一、基本结构

从简单的多文件项目开始吧!通常分为三部分:main.cppaclass.cppaclass.h三个部分:

  • aclass.h

    • 函数原型

    • 使用#define或const定义的符号常量

    • 结构体声明

    • 类声明

    • 模板声明

    • 内联函数

  • aclass.cpp:包含与结构体、模板、类相关的函数代码

  • main.cpp:包含调用与结构体、模板、类相关的函数代码

二、“”<>的区别

  • 包含自定义的头文件时,用双引号“”,编译器首先查找当前工作目录或源代码目录;如果没有找到,则将在标准位置查找。

  • 包含库的头文件时,用尖括号<>,编译器将查找存储标准头文件的主机系统的文件系统中查找。

三、头文件使用ifndefdefineendif的解释

由于在不知情的原因下,有可能将头文件包含多次,基于预处理器编译指令#ifndef(即if not define)可以避免这种情况 。

#ifndef ACLASS_H_...#endif

上面这段代码意味着仅当之前没有使用预处理器编译指令#define定义名称ACLASS_H_时,才处理#ifndef#endif之间的语句。

编译器首次遇到该文件时,名称ACLASS_H_没有定义(该名称根据头文件的名字取得,并加上一些下划线,使其在其他地方不太可能被定义),在这种情况下,编译器将查看#ifndef#endif之间的内容;如果在同一个文件中遇到其他包含aclass.h的内容,编译器就知道ACLASS_H_已经被定义了,从而跳到#endif后面的一行上。


 

视觉lifeC++编程实战:入门基础 C++编程实战:进阶提升的评论 (共 条)

分享到微博请遵守国家法律