VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 567|回复: 6

类(实现文件)报错(未定义标识符)?

[复制链接]
54_avatar_middle
最佳答案
0 
在线会员 发表于 2020-2-1 16:21:37 | 显示全部楼层 |阅读模式
今天写了类的头文件、类的实现文件、main文件(按顺序罗列)
大部分的问题已经解决了,但是实现文件报错:
严重性        代码        说明        项目        文件        行        禁止显示状态
错误(活动)         E0020        未定义标识符 "courseName"                35       
错误                 C2065        “courseName”: 未声明的标识符                35       

请论坛大神指点。

  1. #include <iostream>
  2. using namespace std;

  3. class GradeBook
  4. {
  5. public:
  6.         GradeBook(string);
  7.         void setCourseName(string);
  8.         string getCourseName();
  9.         void displayMessage();
  10. private:
  11.         string courseName;
  12. };
复制代码

  1. #include <iostream>
  2. #include "GradeBook.h"
  3. using namespace std;

  4. GradeBook::GradeBook(string name)
  5. {
  6.         setCourseName(name);
  7. }

  8. void GradeBook::setCourseName(string name)
  9. {
  10.         if (name.length() <= 25)
  11.         {
  12.                 courseName = name;
  13.         }

  14.         if (name.length() > 25)
  15.         {
  16.                 courseName = name.substr(0, 25);
  17.                 cout << "Name "" << name << "" exceeds maximum length(25).\n"
  18.                         << "Limiting courseName to first 25 characters.\n" << endl;
  19.         }
  20. }

  21. string getCourseName()
  22. {
  23.         return courseName;
  24. }

  25. void GradeBook::displayMessage()
  26. {
  27.         cout << "Welcome to the grade book for \n" << getCourseName() << "!" << endl;
  28. }
复制代码

  1. #include <iostream>
  2. #include "GradeBook.h"
  3. using namespace std;

  4. int main()
  5. {
  6.         GradeBook gradeBook1("CS101 Introduction to Programming in C++");
  7.         GradeBook gradeBook2("CS102 C++ Data Structures");

  8.         cout << "gradeBook1's initial course name is:"
  9.         << gradeBook1.getCourseName()
  10.         << "\n gradeBook2's initial course name is:"
  11.         << gradeBook2.getCourseName()
  12.         << endl;
  13. }
复制代码




上一篇:getpeername 得到的是什么?
下一篇:SetLimitText(0)问题
75_avatar_middle
最佳答案
18 
online_supermod 发表于 2020-2-1 18:04:26 | 显示全部楼层
能不能说一下在学习SYC的 那节课 我去下载源码看看
01_avatar_middle
最佳答案
38 
online_admins 发表于 2020-2-1 18:54:53 | 显示全部楼层
哪行报的错误啊?
95_avatar_middle
最佳答案
0 
在线会员 发表于 2020-2-1 21:23:10 | 显示全部楼层
类实现文件里面
string getCourseName()
{
        return courseName;
}
既然是在类外定义的,那一定要加个作用域呀
string GradeBook::getCourseName()
{
        return courseName;
}
54_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2020-2-2 16:30:33 | 显示全部楼层
Vourui 发表于 2020-2-1 21:23
类实现文件里面
string getCourseName()
{

谢谢大神!有效解决问题!!祝论坛越来越好!
54_avatar_middle
最佳答案
0 
ico_lz  楼主| 发表于 2020-2-2 16:39:18 | 显示全部楼层
wl1383838438 发表于 2020-2-1 18:04
能不能说一下在学习SYC的 那节课 我去下载源码看看

SYC是什么?我是小白,我现在在学的是《C++大学教程(第七版)》第三章
95_avatar_middle
最佳答案
0 
在线会员 发表于 2020-2-19 20:11:27 | 显示全部楼层
编辑了~~~~
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号 )|网站地图wx_jqr

GMT+8, 2020-9-30 09:53

Powered by CcTry.CoM

© 2009-2020 cctry.com

快速回复 返回顶部 返回列表