令牌之前'['预期的非限定 id
Expected unqualified-id before '[' token
我知道这个错误通常是语法错误,但我似乎没有发现这个代码有任何错误。有人能帮我指出吗?以下是我得到的错误:
deli.cc:10:7:错误:在"["标记之前应为不合格的idint[]myCashierNums;^deli.cc:11:7:错误:在"["标记之前应为不合格的idint[]myOrderNums;^
以下是我在Ubuntu 14.04 64位上使用g++编译的程序。
#include <iostream>
#include <stdlib.h>
using namespace std;
class SandwichBoard {
//private:
int myMaxOrders;
int [] myCashierNums;
int [] myOrderNums;
//public:
SandwichBoard (int maxOrders) {
myMaxOrders = maxOrders;
myCashierNums = new int [maxOrders];
myOrderNums = new int [maxOrders];
// All values initialized to -1
for (int i = 0; i < maxOrders; i++){
myCashierNums[i] = -1;
myOrderNums[i] = -1;
}
}
// For debugging purposes
void printMyOrders() {
for (int i = 0; i < maxOrders; i++){
cout << "Cashier " << myCashierNums[i] << ", ";
cout << "Order " << myOrderNums[i] << endl;
}
}
int getMaxOrders () { return myMaxOrders; }
};
void cashier(void *in) {
}
void sandwich_maker(void *in) {
}
int main(int argc, char *argv[]) {
}
这是C++,而不是Java!像这样声明数组:
int myCashierNums[1000];
int myOrderNums[1000];
请注意,C++中的数组在编译时必须有一个大小。在上面的例子中,它是1000。
修改:
int myMaxOrders;
int* myCashierNums;
int* myOrderNums;
添加:
~SandwichBoard() {
if (myMaxOrders) {
delete [] myCashierNums;
delete [] myOrderNums;
}
}
相关文章:
- C++:"("令牌"之前有预期的非限定 id 指向类中成员函数的指针
- 错误:令牌 { '{' 之前应存在非限定 ID
- 令牌 C++ 错误之前'['非限定 ID
- 修复令牌错误之前';'预期的非限定 ID
- C 错误:令牌之前'['预期为非限定 id
- "["令牌和 + 之前应为非限定 ID
- 屏幕显示脚本中'.'令牌之前的预期非限定 id
- “OR”令牌之前的预期非限定 ID
- 声明中的限定 ID 在"="令牌/对象计数器变量之前
- 需要调试"在')'令牌之前预期的非限定id",第一次使用c ++的用户
- 在"." 令牌之前应为非限定 ID(C++ 错误)
- 在“.”令牌之前应为非限定 ID
- 令牌之前应'{'非限定 ID
- 函数概率:令牌之前'['预期的非限定 id
- 预期在令牌之前的未合格ID
- 错误:预期的非限定 ID befo 重新'{'令牌
- Arduino 错误在令牌之前预期为非限定 id '/'
- 错误:在 Arduino 中'{'令牌之前预期未限定 ID
- 令牌之前')'预期的非限定 id?
- 令牌之前应为非限定 ID ')'