因此,我尝试编译由其他人编写的一组C文件,并且不断收到以下错误:


  TBin.h:10:错误:预期为'=',',',
  ';','asm'或'attribute'之前
  'TBin'


这发生在.h文件中,该文件当前在类定义之前具有#ifndef#define。该行本身是:

class TBin {


文件中没有其他内容,没有包含,没有注释,没有任何随机位。即使我删除了防护并将声明右移到文件的顶部,我也会遇到相同的错误。我以为只有在前面的代码中有问题时才会发生这种情况,但是我没有前面的代码!有想法吗?

最佳答案

您不能在C语言中使用“类”。请尝试使用C ++编译器。 ;-)

只是为了比较,这是clang的输出:

% ~/ellcc/bin/ecc ~/test.c
/home/rich/test.c:1:1: error: unknown type name 'class'
class TBin {
^
/home/rich/test.c:1:11: error: expected ';' after top level declarator
class TBin {
          ^
          ;
2 errors generated.


也许更具描述性,但不要太多。

10-05 19:33