【发布时间】:2022-01-09 14:41:27
【问题描述】:
您好,这是我在堆栈溢出时的第一个主题(问题),我在 Code::Blocks 尝试了一个关于 c++ 类的项目,但出了点问题
#include <iostream>
using namespace std;
class char1
{
public:
string charName;
float charLength;
void printName()
{
cout<<"char name is"<<charName;
}
};
int main()
{
int charNAME;
float charLENGTH;
cout<<"write your char's name"<<endl;
cin>>charNAME;
cout<<"write your char's length"<<endl;
cin>>charLENGTH;
char1 name;
char1 length;
name.charName=charNAME;
length.charLength=charLENGTH;
return 0;
}
当我运行程序时,它问我 char 的名字我写了一些东西,在它询问 char 的长度之后 但是程序到此为止我什么都做不了 here is picture for help
【问题讨论】:
-
您要创建一个
char1,例如char1 my_char;。然后你想做my_char.charName = charName; mychar.charLength = charLength。至此程序完成并存在。 -
是不是因为您将 charNAME 定义为 int 而不是 string?
-
请不要使用“using namespace std;”。如果您需要一些来自 0...n 而不是 float 的值,请使用
unsigned int。请使用构造函数来初始化对象,而不是直接访问内部。如果我们只能有文字,请不要发布图片。 “但出了点问题”也不是一个好的错误描述。你有编程或 C++ 的初学者书籍吗?阅读第一页的好时机,尤其是为什么我们想要类而不是全局变量。 -
@RobinDillen 我写的是 charLENGTH 而不是 charLength 是程序认为其中两个相同吗?
-
@Klaus 我说我是新手,对此我很抱歉,而且我还有一本关于 c++ 的初学者书籍