我正在尝试使用委托构造函数,并尝试遵循在这个问题和这个问题中找到的格式,但是,我仍然遇到问题。
我的player.h
文件是这样的:
#ifndef PLAYER_H_
#define PLAYER_H_
#include <string>
class Player
{
public:
Player(void);
Player(std::string name, int score);
~Player();
protected:
std::string name_;
int score_;
};
#endif
我的player.cpp
文件是这样的:
#include "player.h"
Player::Player(std::string name, int score)
{
score_ = score;
name_ = name;
}
Player::Player(void) : Player(NULL,0)
{
}
但是,当我尝试编译时,出现以下错误:
1>a:\projects\test\src\player.cpp(5): error C2614: 'Player' : illegal member initialization: 'Player' is not a base or member
我究竟做错了什么?如果相关,我使用的是 VS2012。