引发了异常: 读取访问权限冲突。 payment 是 0x1A5F30CAF30。给出的异常提示是这样的
时间: 2024-03-14 18:47:38 浏览: 44
这个异常提示可能是因为在复制构造函数中,你访问了 payment 对象的私有成员。请确保你只复制 payment 对象的公有成员。
另外,异常提示中给出了 payment 对象的地址,即 0x1A5F30CAF30。你可以在程序中打印出该对象的地址,以便更好地定位问题,例如:
```
PaymentRecords payment1(1, "name1", Date(2022, 1, 1));
cout << "Address of payment1: " << &payment1 << endl;
PaymentRecords payment2(payment1); // 调用复制构造函数
cout << "Address of payment2: " << &payment2 << endl;
```
这样可以打印出 payment1 和 payment2 的地址,以确定是否出现了地址混淆等问题。
相关问题
解释一下这个报错:# A fatal error has been detected by the Java Runtime Environment: # # SIGBUS (0x7) at pc=0x00007f36fadb534d, pid=4045220, tid=0x00007f354a1b7700 # # JRE version: OpenJDK Runtime Environment (8.0_222-b10) (build 1.8.0_222-b10) # Java VM: OpenJDK 64-Bit Server VM (25.222-b10 mixed mode linux-amd64 compressed oops) # Problematic frame: # C [libzip.so+0x1234d] newEntry.isra.4+0x7d # # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /GSCloud2103/hs_err_pid4045220.log Compiled method (nm) 4791771 742 n 0 java.util.zip.ZipFile::getEntry (native) total in heap [0x00007f36e52edd90,0x00007f36e52ee100] = 880 relocation [0x00007f36e52edeb8,0x00007f36e52edf00] = 72 main code [0x00007f36e52edf00,0x00007f36e52ee100] = 512 /GSCloud2103/./startup-linux.sh: line 78: 4045220 Segmentation fault (core dumped) $JAVA_HOME/bin/java $CAF_OPS -server -Dloader.path=$CAF_MODULE_PATHS -Dserver.runtime.path.name=$IGIX_SERVER_PATH $JVM_MEM_OPTS $JVM_DEBUG_OPTS -jar $CAF_BOOTSTRAP --spring.config.location=$IGIX_SERVER_HOME/runtime/
这是一个严重的错误报告,出现了SIGBUS错误,可能是由于硬件或内存故障引起的。报告中提到了一个问题帧,这是指程序崩溃的位置,即C语言的libzip库中的newEntry.isra.4+0x7d方法。此外,还有一个“Segmentation fault (core dumped)”错误,这是指进程试图访问其无法访问的内存区域,导致操作系统终止了该进程并生成了一个核心转储文件。如果这是一个持续发生的问题,建议检查硬件和内存,或者查看是否有最新的库或更新可用。
阅读全文