#include "stdafx.h"
#include "iostream"
using namespace std;
class Student
{int number;
char name;
int telphone;
char sex;
public:
Student::~Student (){}
void Person(int num,char nam,int tel,char s){number=num;name=nam;telphone=tel;sex=s;}
void Getnumber(){}
void Getname(){}
void Gettelphone(){}
void GetSex(){}
};
void Student::Getnumber()
{
cout<<Student.number;
}
void Student::Getname()
{
cout<<Student.name;
}
void Student::Gettelphone()
{
cout<<Student.telphone;
}
void Student::GetSex()
{
cout<<Student.sex;
}
void main()
{
Student student1;
char m;
char s;
student1.Person(1,m,123456,s);
system("pause");}1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(23): error C2084: 函数“void Student::Getnumber(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(17) : 参见“Getnumber”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(24): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(24): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(24): error C2228: “.number”的左边必须有类/结构/联合
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(27): error C2084: 函数“void Student::Getname(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(18) : 参见“Getname”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(28): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(28): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(28): error C2228: “.name”的左边必须有类/结构/联合
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(31): error C2084: 函数“void Student::Gettelphone(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(19) : 参见“Gettelphone”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(32): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(32): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(32): error C2228: “.telphone”的左边必须有类/结构/联合
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(35): error C2084: 函数“void Student::GetSex(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(20) : 参见“GetSex”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(36): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(36): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(36): error C2228: “.sex”的左边必须有类/结构/联合
1>
1>生成失败。
#include "iostream"
using namespace std;
class Student
{int number;
char name;
int telphone;
char sex;
public:
Student::~Student (){}
void Person(int num,char nam,int tel,char s){number=num;name=nam;telphone=tel;sex=s;}
void Getnumber(){}
void Getname(){}
void Gettelphone(){}
void GetSex(){}
};
void Student::Getnumber()
{
cout<<Student.number;
}
void Student::Getname()
{
cout<<Student.name;
}
void Student::Gettelphone()
{
cout<<Student.telphone;
}
void Student::GetSex()
{
cout<<Student.sex;
}
void main()
{
Student student1;
char m;
char s;
student1.Person(1,m,123456,s);
system("pause");}1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(23): error C2084: 函数“void Student::Getnumber(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(17) : 参见“Getnumber”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(24): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(24): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(24): error C2228: “.number”的左边必须有类/结构/联合
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(27): error C2084: 函数“void Student::Getname(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(18) : 参见“Getname”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(28): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(28): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(28): error C2228: “.name”的左边必须有类/结构/联合
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(31): error C2084: 函数“void Student::Gettelphone(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(19) : 参见“Gettelphone”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(32): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(32): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(32): error C2228: “.telphone”的左边必须有类/结构/联合
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(35): error C2084: 函数“void Student::GetSex(void)”已有主体
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(20) : 参见“GetSex”的前一个定义
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(36): warning C4832: 标记“.”在 UDT“Student”之后是非法的
1> c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(8) : 参见“Student”的声明
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(36): error C2275: “Student”: 将此类型用作表达式非法
1>c:\documents and settings\huwei\my documents\visual studio 2010\projects\baidu\baidu\baidu.cpp(36): error C2228: “.sex”的左边必须有类/结构/联合
1>
1>生成失败。
解决方案 »
- visual studio 2010 怎么看堆栈?
- 关于查找应用程序句柄和关闭程序的一系列问题?
- Debug Assertion Failed!
- 关于串口通信
- DLL导出类问题
- 菜鸟问题,我加了一个LISTBOX在DIALOG中,我怎么向这个LISTBOX加东西呢?
- 放分:萦绕在心头的一个礼拜之久的问题,终于一扫而空!欢迎看过《COM原理与应用》的各位CSDN朋友,对自己理解第四章的接口聚合的实现机
- vs2012,如何include另一个项目中的h文件?
- 视频采集卡的问题
- 关闭对话框!!!
- 怎么解决CListCtrl 刷新后自动跳到首行
- movewindow 的参数应该如何设置 麻烦帮我看一下吧
改成cout<<number;
这个.前面必须是实例,不是类
using namespace std;
class Student
{
int number;
char name;
int telphone;
char sex;
public:
Student::~Student (){}
void Person(int num,char nam,int tel,char s){number=num;name=nam;telphone=tel;sex=s;}
void Getnumber();
void Getname();
void Gettelphone();
void GetSex();
};
void Student::Getnumber()
{
cout<<number;
}
void Student::Getname()
{
cout<<name;
}
void Student::Gettelphone()
{
cout<<telphone;
}
void Student::GetSex()
{
cout<<sex;
}
void main()
{
Student student1;
char m;
char s;
student1.Person(1,m,123456,s);
system("pause");
}
在类里这叫声明,像是C往顶部放的声明一样
在C++里,要最好把头文件声明与实现分开
声明是不能带{}的,带了就像是一个"空实现"了
你后来再去实现就会出错
cout<<Student.number;
Student是个类,number是成员变量,也只是声明,正常情况是没有值的
你这样输出当然是错误的
你那个Person 应改为构造函数更好些
还有:
void main()
{
Student student1;
char m;
char s;
student1.Person(1,m,123456,s);//这个m,s没有初始化
system("pause");
}