首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

汉语分词ICTCLAS头文件编译出错

2012-07-28 
中文分词ICTCLAS头文件编译出错[codeC/C++]/*********************************************************

中文分词ICTCLAS头文件编译出错
[code=C/C++]
/*******************************************************************************  
@All   Right   Reserved   (C),   2010-2100,   golaxy.cn
Filepath       :   E:\Project\IctClas\ictclas5
Filename       :   ICTCLAS5.h
Version         :   ver   5.0
Author           :   x10n6y@gmail.com  
Date               :   2010/06/03    
Description:        
History         :
                          1.2010/06/03   17:19   Created   by   x10n6y@gmail.com   Version   5.0    

*******************************************************************************/
#ifndef   ICTCLAS_LIB_
#define   ICTCLAS_LIB_

#define   ICTCLAS_EXPORTS

#ifdef   OS_LINUX
#define   ICTCLAS_API  
#else
#ifdef   ICTCLAS_EXPORTS
#define   ICTCLAS_API   extern   "C "   __declspec(dllexport)//export   function
#else
#define   ICTCLAS_API   extern   "C "   //extern   ,   c   compiler
#endif
#endif

//////////////////////////////////////////////////////////////////////////
//标注集
//////////////////////////////////////////////////////////////////////////
#define   ICT_POS_MAP_SECOND   0   //计算所二级标注集
#define   ICT_POS_MAP_FIRST   1     //计算所一级标注集
#define     PKU_POS_MAP_SECOND   2   //北大二级标注集    
#define   PKU_POS_MAP_FIRST   3//北大一级标注集
#define   POS_MAP_NUMBER   4   //标注集   数量  
#define     POS_SIZE   8   //   词性标记最大字节数  

//////////////////////////////////////////////////////////////////////////
//   字符编码类型
//////////////////////////////////////////////////////////////////////////
enum   eCodeType   {
CODE_TYPE_UNKNOWN,//type   unknown
CODE_TYPE_ASCII,//ASCII
CODE_TYPE_GB,//GB2312,GBK,GB10380
CODE_TYPE_UTF8,//UTF-8
CODE_TYPE_BIG5//BIG5
};
//////////////////////////////////////////////////////////////////////////
//字符串结果  
//////////////////////////////////////////////////////////////////////////
#pragma   pack(1)  
struct   tagICTCLAS_Result{
    int   iStartPos;   //开始位置
    int   iLength;   //长度
    char   szPOS[POS_SIZE];//词性
    intiPOS;   //词性ID
    int   iWordID;   //词ID
    int   iWordType;   //词语类型,用户词汇?(0-否,1-是)
    int   lfWeight;//   词语权重
  };
#pragma   pack()  
typedef   tagICTCLAS_Result*   LPICTCLAS_RESULT;
//////////////////////////////////////////////////////////////////////////
//接口
//////////////////////////////////////////////////////////////////////////

ICTCLAS_API   bool   ICTCLAS_Init(const   char*   pszInitDir=NULL);


ICTCLAS_API   bool   ICTCLAS_Exit();


ICTCLAS_API   bool   ICTCLAS_SetPOSmap(int   nPOSmap);


ICTCLAS_API   unsigned   int   ICTCLAS_ImportUserDictFile(
const   char*   pszFileName,
eCodeType   codeType=CODE_TYPE_UNKNOWN
);


ICTCLAS_API   unsigned   int   ICTCLAS_ImportUserDict(
      const   char*   pszDictBuffer,
      const   int   nLength,
      eCodeType   codeType
      );

ICTCLAS_API   int   ICTCLAS_SaveTheUsrDic();


ICTCLAS_API   int   ICTCLAS_ParagraphProcess(
const   char*     pszText,
int         iLength,
char*         pszResult,   //[out]
eCodeTypecodeType=CODE_TYPE_UNKNOWN,
bool                 bEnablePOS=false
);

ICTCLAS_API   LPICTCLAS_RESULT     ICTCLAS_ParagraphProcessA(
const   char*     pszText,
int         iLength,
int         &nResultCount,   //[out]
eCodeTypecodeType=CODE_TYPE_UNKNOWN,
bool                 bEnablePOS=false
);


ICTCLAS_API   bool   ICTCLAS_ResultFree(LPICTCLAS_RESULT   pRetVec);


ICTCLAS_API   bool   ICTCLAS_FileProcess(
  const   char*   pszSrcFileName,
  const   char*   pszDstFileName,  
  eCodeTypesrcCodeType=CODE_TYPE_UNKNOWN,
  bool                 bEnablePOS=false
  );


ICTCLAS_API   int   ICTCLAS_ParagraphProcessAW(
const   char*                               pszText,
LPICTCLAS_RESULT     pResult,
eCodeType                           codeType=CODE_TYPE_UNKNOWN,
bool                                               bEnablePOS=false
);

#endif   //   ICTCLAS_LIB_


[/code]

以上是头文件ICTCLAS.h
我在test.cc中包含了该头文件

[code=C/C++]

#include   <iostream>
#include   "ICTCLAS50.h "

using   std::cout;
using   std::endl;

int   main(void){
        return   0;

}
[/code]

之后

g++   -c   test.cc,

出错信息如下:
In   file   included   from   test.cc:2:
ICTCLAS50.h:67:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:70:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:73:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:76:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:82:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:88:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:91:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token


ICTCLAS50.h:99:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:109:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:112:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token
ICTCLAS50.h:120:   error:   expected   constructor,   destructor,   or   type   conversion   before   ‘(’   token


麻烦各位大大们帮忙看看,呵呵

[解决办法]
我直接调用Word的Ctrl-Right功能进行中文分词。
[解决办法]
还要把类文件加到工程中吧?关注下。
1L说的方法怎么用呀?
[解决办法]
具体是哪行?贴一下?
[解决办法]
晕,lib不是这样加进去的

热点排行
Bad Request.