class a{ int name; int number; int set_name(int ne) { name=ne; }; int set_number(int nr) { number=nr; }; void show_name { cout<<name; }; void show_number { cout<<number; }; };
时间: 2024-01-26 22:05:15 浏览: 25
在你的代码中,show_name 函数和 show_number 函数被声明为 void 类型,但是在函数体中又尝试输出某个值。这会导致编译器出现错误。你需要在函数声明和定义中添加圆括号 () 来表示这些函数是可调用的函数,并将函数体中的输出语句放在圆括号内。修改后的代码如下:
```
#include <iostream>
using namespace std;
class a {
int name;
int number;
int set_name(int ne) {
name = ne;
}
int set_number(int nr) {
number = nr;
}
void show_name() {
cout << name;
}
void show_number() {
cout << number;
}
};
```
需要注意的是,set_name 和 set_number 函数的返回类型应该是 void,而不是 int。另外,你的代码中没有定义 main 函数,因此编译器也会报错。
相关问题
class a{ int name; int number; int set_name(int ne) { name=ne; } int set_number(int nr) { number=nr; } void show_name { cout << name; } void show_number { cou t<< number; } };
在你的代码中,set_name 和 set_number 函数的返回类型应该是 void,而不是 int。另外,show_name 和 show_number 函数的定义中缺少圆括号 (),这会导致编译器出现错误。修改后的代码如下:
```
#include <iostream>
using namespace std;
class a {
int name;
int number;
void set_name(int ne) {
name = ne;
}
void set_number(int nr) {
number = nr;
}
void show_name() {
cout << name;
}
void show_number() {
cout << number;
}
};
```
需要注意的是,你的代码中没有定义 main 函数,因此编译器也会报错。
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h> using namespace std; class a{ public: int name; int number; void set_name(int ne) { name=ne; } void set_number(int nr) { number=nr; } void show_name() { cout << name; } void show_number() { cout << number; } }; int main() { a a1; a*p=new a; int x; cin>>x; p->set_number(x); p->show_name(); };
在你的修改中,你使用 new 运算符为类 a 的指针 p 分配了内存空间,但是你没有为其设置 name 值,因此在调用 show_name 函数时会输出一个未定义的值。你需要将指针 p 的 name 值设置为一个已知的值,或者直接使用对象 a1 进行操作。修改后的代码如下:
```
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
class a{
public:
int name;
int number;
void set_name(int ne) {
name = ne;
}
void set_number(int nr) {
number = nr;
}
void show_name() {
cout << name;
}
void show_number() {
cout << number;
}
};
int main() {
a a1;
a* p = new a;
int x;
cin >> x;
p->set_number(x);
p->set_name(10); // 将指针 p 的 name 值设置为 10
p->show_name();
return 0;
}
```
这个程序的功能为:从标准输入中读取一个整数,将其设置为指针 p 的 number 值,将指针 p 的 name 值设置为 10,然后输出指针 p 的 name 值。