C++ 构造函数参数:字符串、整数、整数、整数

C++ Constructor Parameters: string, int, int, int

本文关键字:整数 字符串 构造函数 参数 C++      更新时间:2023-10-16

我正在尝试用一个字符串和三个整数声明一个四参数构造函数。 根据我的分配准则,我不能在我的代码中的任何位置使用命名空间 std

实现文件中的构造函数是:

Player (std::string w, int x, int y, int z)
{
}

我有一个类规范的头文件、一个类函数实现文件和一个 main 方法文件。 我在主方法文件和实现文件中都使用了 #include,但 IDE 一直说"("是预期的或分号。 但是分号不起作用,因为这是构造函数的定义。 我被难住了。

main.cc

#include "player.h"
int main() {
Player x("player_x", 1, 2, 3);
}

玩家.h

#ifndef YOUR_PROJECT_PLAYER_H
#define YOUR_PROJECT_PLAYER_H
#include <string>
class Player {
public:
Player(std::string w, int x, int y, int z);
};
#endif

player.cc

#include "player.h"
Player::Player(std::string w, int x, int y, int z) {}

不使用"using namespace std;":很好,改用"using std::string;"。我强烈推荐仅在源文件中,而不是头文件中。

如果定义在类声明之外,则必须在构造函数(和成员函数(名称之前编写类名:

Player::Player( std::string w, ...)
{
}
void Player::func( ...)
{
}