当前位置:  技术问答>linux和unix

超简单.帮个忙,有点语法没搞懂

    来源: 互联网  发布时间:2015-12-03

    本文导语:  看看下面的头文件:明明是c的风格来编译但是里面却定义了个类.这样居然是合法的.我不太明白.请高手指点一下: #ifdef __cplusplus extern "C"{ #endif ////////////////////////////////////////////////////////////////////// /* ------------------...

看看下面的头文件:明明是c的风格来编译但是里面却定义了个类.这样居然是合法的.我不太明白.请高手指点一下:

#ifdef __cplusplus
extern "C"{
#endif
//////////////////////////////////////////////////////////////////////



/* ----------------------------------------------------------------------------
  文件解析、处理类

   -----------------------------------------------------------------------------*/
class CFileProcess 
{
protected:
enum  { MAX_FILENAME_LEN= 100 };                     //内部使用最大文件名长

typedef struct TFileHeadRecord
{
UINT8        cSendType;         //发送方式  0:每行为单个手机号码 1:每行一个号段
UINT32       lSpNumber;
INT8         sServNum[ 22 ];
INT8         sServCode[ 11 ];
INT8         sSrcNum[ 22 ];
UINT8        cSrcNumFlag;       //0:固定源号码,1:从文件中轮循读取
UINT8        cPID;
UINT8        cUDHI;
UINT8        cMsgFormat;        //消息格式
UINT8        cMsgLen;           //消息长度
        INT8         sMsgContent[1024]; //消息内容

} TFileHeadRecord;

typedef struct TUserTable
{
INT8         sBeginNum[ 22 ];
INT8         sEndNum[ 22 ];
} TUserTable;

public:
CFileProcess();
~CFileProcess();

public:
//对象系统起动
INT32         Start();

//对象系统关闭
INT32         Shut();

//检测处理目录下所有待处理文件
INT32         DetectFile( const UINT8 cFileType= 0 );

//检测处理目录下的待处理文件
INT32         DetectWinFile( const UINT8 cFileType= 0 );

//文件解析预处理
BOOL          PretreatFile( INT8* pFileName );

//解析文件
INT32         FetchFile( const INT8* pFileName, const UINT8 cFileType= 0 );

//解析头记录行
INT32         FetchHeadRecordLine( char* pFile, char* pHead );

//解析记录行
INT32         FetchRecordLine( const INT8* pRecordLine, INT8* pRecord, const UINT8 cFileType, const UINT8 cRecordType );

//获取源号码
INT32         GetSrcNumFromFile( FILE** pfpSrcNum, INT8* pSrcNum );

//处理每一条记录
INT32         TreatRecord( const INT8* pRecord, TFileHeadRecord* pHeadRecord, const UINT8 cFileType, const UINT8 cRecordType );

//文件解析结束后处理
//cOptFlag: 0:无效 1:移动 2:复制 3:删除
INT32         OptFile( const UINT8 cOptFlag, const INT8* pFileName, const INT8* pFilePath_Bak );

//设置文件路径
INT32         SetFilePath( const INT8* pFilePath, const UINT8 cFileType= 0 );

//设置操作信息
INT32         SetOptInfo( const UINT8 cOptFlag, const INT8* pFilePath );

//设置解压信息
INT32         SetUnzipInfo( const INT8* pZipFileSuffix, const INT8* pUnzipCmd );

protected:
//处理线程
static MYTYPE_THREAD_FUNC  thProcessor( void* pParam );

public:
BOOL          m_bExitFlag;                           //对象系统退出标记

//文件路径
INT8          m_sFilePath_Update[ MAX_FILENAME_LEN ];

INT8          m_sZipFileSuffix[ 20 ];                 //压缩文件后缀
INT8          m_sUnzipCmd[ 100 ];                     //解压命令

UINT8         m_cOptFlag;                             //解析结束操作标记 0:无效 1:移动 2:复制 3:删除
INT8          m_sFilePath_Bak[ MAX_FILENAME_LEN ];    //备份路径
};




//////////////////////////////////////////////////////////////////////
#ifdef __cplusplus
}
#endif

|
。。。你还是没有明白什么叫做C风格的命名方式。
C风格的命名方式!=用C语言来编译。明白了吗?
也就是说还是用C++来编译,只是命名用C风格来命名而已。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • c/c++预处理命令预#define语法和例子
  • 最近在学习linux C 看到了makefile部分,觉得makefile的语法很难理解,Makefile 的语法是不是shell语法?
  • JavaScript中的消息框(警告框,确认框,提示框)语法
  • mysql iis7站长之家
  • mysql 存储过程实例和基本语法
  • Java表达式语法解析库 parboiled
  • wireshark抓包后查看数据报时的过滤规则/过滤语法及举例说明
  • 语法分析生成器 JavaCC
  • Lex/YACC 高手请进,求分析C语言语法例子
  • 语法着色JS库 Rainbow.js
  • JavaScript语法着色库 SyntaxHighlighter
  • LINUX下的汇编 怎么看????高手指导语法
  • linux shell 编程有哪些图形工具带有语法检查功能呢?
  • 关于shell语法调试
  • ANTLR可视化语法工具 Antlrworks
  • 语法着色库 Colorer Library
  • 怎样让jcreator支持jsp的语法啊?在线等待
  • velocity语法树解析 syntaxTree
  • java的语法说明
  • 语法着色开发工具 SourceHighlightIDE
  • 语法高亮工具 GNU Source-highlight


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3