gpt4 book ai didi

c++ - 在构造函数中 ‘Player::Player()’ : error: invalid conversion from ‘const char*’ to ‘char’

转载 作者:行者123 更新时间:2023-11-28 07:00:28 27 4
gpt4 key购买 nike

我的 Blackjack 默认构造函数中有这一行。

m_players[0].SetPlayerName("Jane");

这在我的 Player 类中使用了一个 setter 来将玩家的名字设置为 Jane。

我的播放器构造函数是这样的。

Player::Player()
{
Player player;
player.m_funds = 0;
player.m_name = "";
player.m_bet = 0;
player.m_busted = false;
}

而且,要了解更多信息,我的 SetPlayerName 方法是这样的。

void Player::SetPlayerName(char name)
{
m_name = name;
}

如何修复此转换错误?我只是想将玩家的名字设置为一个字符。谢谢!

我只是想为一个玩家 Jane 设置默认构造函数。

最佳答案

字符串字面值(类似于"Foobar" 的类型是const char[N],其中N 是字符数 + 1 (对于空终止符),表示 N char 的数组。

您的变量 m_name 似乎是 char 类型,它是一个字符。

无法将 const char[N] 数组转换为 char。您真正想要的是 m_namestd::string 类型或可能是 const char*

为什么 const char*const char[N] 退化为 const char* 并且可以指向任意大小的文字。

关于c++ - 在构造函数中 ‘Player::Player()’ : error: invalid conversion from ‘const char*’ to ‘char’ ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22572055/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com