TeamTalk初学笔记3---关于win-client【第二篇:入口文件_头文件】

原创
2015/10/06 17:19
阅读数 592

研究一个应用程序的源码,我们常常会从它的第一个窗口:登陆界面开始研究。至少我个人就比较喜欢从程序启动的瞬间,第一时间执行的那个函数开始着手。

选中解决方案,右键—>属性—>启动项目,可以看到当前选中的是单启动项目:teamtalkC++的英文名字就是cplusplus,简写:cpp。这下可以知道入口文件必然是同名文件:teamtalk.cpp了,寻找一番,就可以找到,如下图位置:

文件的物理路径:\win-client\src\teamtalk\文件夹下面。

既然入口已经找到,接下来这篇博客,我们就单单分析一下这个入口文件吧。

我们知道,每一个.cpp都伴随有一个.h头文件;之所以在 C++ 中要使用头文件,最主要的原因是 C++ 的同一个项目可能有多个源代码文件,要命的是这些源代码是分别单独编译的。也就是说,在编译其中一个文件时,编译器并不知道其它文件中定义的内容,如类、全局变量等。这就要求我们必须在要使用某个类、函数或变量的每个文件中声明它,否则 C++ 是无法找到它的。

所以,我们就先来讲讲teamtalk.h这个头文件的内容吧:

一、#pragma once  //仅编译一次

编译器预编译命令:仅编译一次;用途:常出现在头文件中。因为同一头文件会在许多源文件中多次引用。如果没有指定编译一次,则编译时出现重定义错误。

相同作用命令:
#ifndef ABC_H
#define ABC_H
//
头文件代码内容*******
#endif

二、#ifndef __AFXWIN_H__

    #error "在包含此文件之前包含“stdafx.h”以生成 PCH 文件"

#endif

#ifndef是宏定义的一种,它是可以根据是否已经定义了一个变量来进行分支选择。

#error命令是C/C++语言的预处理命令之一,当预处理器预处理到#error命令时将停止编译并输出用户自定义的错误消息。

三、这里不难理解到,先要加载stdafx.h这个头文件(标准系统包含文件的包含文件、经常使用但不常更改的或是特定于项目的包含文件)

有个小细节值得一提,一般#include “”里面的都是自定义的头文件,而#include <>里面的头文件则是系统盘里面的例如:#include <afxwin.h>

四、其他注解如下图:

关于TeamTalk-Client入口文件的头文件篇就到这里吧,接下来又要去搞个Abap报表去咯。。。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部