gpt4 book ai didi

c++ - 在 C++ 中的类中调用函数?

转载 作者:行者123 更新时间:2023-11-30 01:59:27 25 4
gpt4 key购买 nike

class CBAY_ITEM
{
public:

string name = enterName();
string condition = enterCondition();

};

编译时出现4个错误

1.函数调用不能出现在常量表达式中

2.ISO C++ 禁止成员 'name' 的初始化

3.making 'name' static

4.非整数类型 'std::string' 的静态数据成员的类内初始化无效

我做错了什么??

最佳答案

在 C++03 中,您不能在声明成员时初始化成员,除非它们是用常量表达式初始化的静态 const 成员。 C++03 中常量表达式不能包含函数调用。

切换到 C++11(-std=c++11-std=c++0x with gcc 或 clang)或初始化成员CBAY_ITEM 的构造函数。如果您有多个执行公共(public)初始化的构造函数,则可以将公共(public)初始化移至辅助初始化方法。

class CBAY_ITEM {
std::string name;
std::string condition;
public:
CBAY_ITEM() : name(enterName()), condition(enterCondition())
{}
};

关于c++ - 在 C++ 中的类中调用函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16258315/

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