52 28 C:\编程用\cpp\sdvdvdvdf.cpp [Error] no matching function for call to 'Staff::Staff(std::string&, char&, std::string&)'
时间: 2023-06-26 11:08:28 浏览: 75
这个错误提示表明在 `sdvdvdvdf.cpp` 文件的第 28 行出现了问题,具体是在构造函数调用时发生了错误。错误的原因是构造函数的参数类型与传入的参数类型不匹配。具体来说,`Staff::Staff()` 函数的参数应该是 `std::string, char, std::string` 类型的,但是传入的参数类型不匹配。你需要检查一下传入的参数类型是否正确,如果不正确,需要进行调整。
相关问题
D:\code\octAlgDemo\octDemo\main.cpp:52: error: no matching function for call to 'fopen_s'
这个错误是因为你正在使用`fopen_s`函数,但是它需要两个参数,而你只传递了一个参数。`fopen_s`函数需要两个参数:第一个参数是一个指向 FILE 结构的指针,第二个参数是文件名和文件操作模式组成的字符串。你需要修改你的代码,以便正确调用`fopen_s`函数,例如:
```
FILE *file;
errno_t err = fopen_s(&file, "filename.txt", "r");
if (err == 0) {
// 文件打开成功
} else {
// 文件打开失败
}
```
bootable/recovery/recovery.cpp:789:6: error: no matching function for call to 'fwrite'
这错误的原因是在代码中调用了`fwrite`函数,但是没有提供正确的参数。`fwrite`函数的参数应该是:
```
fwrite(const void *ptr, size_t size, size_t count, FILE *stream)
```
你需要确认调用`fwrite`时传入了正确的参数,特别是`count`参数,它表示要写入的元素的数量,而不是字节数量。如果这些参数都正确,但仍然出现错误,请检查文件指针`stream`是否正确初始化,指向了正确的文件。