我怎样才能克服 "unsafe" 错误?

How can i overcome "unsafe" error?

我正在做一个基本上控制停车场的项目。在我的代码的某些地方,我使用了函数 strcpy(),但我收到一条错误消息,指出此函数可能不安全。
这是我使用的代码的一部分 strcpy():

Automovel::Automovel(char * matr, Data ent, double comp) {
    //CONSTRUTOR POR ENUMERAÇAO:
    //RECEBE A MATRICULA, A DATA DE ENTRADA E O COMPRIMENTO DO CARRO
    //POSIÇAO E VALOR PAGO FICA INDEFINIDO
    matricula = new char[11];
    entry = new Data(ent);

    strcpy(matricula, matr);
    comprimento = comp;
    pos[0] = -1; pos[1] = -1;
    pago = -1;
}

我需要使用该功能,请问如何解决这个错误?

你没说,但我假设你使用的是 Visual Studio;这就是我遇到错误的地方。

要么硬着头皮用strcpy_s等,要么这样:

#pragma warning(disable : 4996) 

这将禁用使 strcpy 出错的 "feature"。

您的问题是 strcpy 是一个 'unsafe' 函数,因此您需要禁用 Visual Studio 中的 unsafe warning,因此请遵循 these steps.