如何使用Android NDK编译带有成员函数的结构?

时间:2012-04-17 08:11:03

标签: android c++ struct compiler-errors android-ndk-r5

  

可能重复:
  “expected ':', ',', ';', '}' or 'attribute' before '{' token” in Struct member function

我用android ndk-build编译一个C ++库。当代码具有在其中定义成员函数的结构时,我得到编译错误。 此代码与其他编译器一起编译。

示例代码:

typedef struct
{
    boolean current;
    int a;
    boolean IsCurrent() const
    {
      return current;
    }
} sampleStruct;

我得到的错误是 - “错误:预期':',',',';','}'或'属性'在'const'之前” 如果我摆脱const,错误是 - “错误:预期':',',',';','}'或'属性'在'{'token”之前

1 个答案:

答案 0 :(得分:1)

建议:

  1. boolean替换为bool,因为那是C ++'boolean-type。
  2. 确保您没有使用C编译器进行编译。
  3. 风格建议: 请注意,typedef struct { ... } name;是C ++中过时的做法。只需编写struct name { ... };,即可编写构造函数和析构函数。