我有一个名为 KernelLock 的类,我正在创建一个名为 myLockArray 的 KernelLock 数组。我这样声明:KernelLock myLockArray[150];
当我尝试向 myLockArray 添加新的 KernelLock 时,出现上述错误。这是我得到错误的确切行:
myLockArray[initializedLocksCounter] = new KernelLock(myAddrSpace, newLock);
这是确切的错误:
error: no match for 'operator=' in 'myLockArray[initializedLocksCounter] = (((KernelLock*)operator new(8u)), (<anonymous>->KernelLock::KernelLock(myAddrSpace, newLock), <anonymous>))
如果有帮助,我正在通过 Nachos 使用 gcc 进行编译。