C++在头文件定义类,在源文件实现类的成员函数,出现问题。菜鸟求教
//头文件B.h#ifndef_B_H#define_B_H#include<string>classB{public:B();~B();voidshowfunc();s...
// 头文件 B.h
#ifndef _B_H
#define _B_H
#include <string>
class B
{
public:
B();
~B();
void showfunc();
string b;
};
#endif
// 源文件 B.cpp
#include <iostream>
#include <string>
#include "B.h"
using namespace std;
B::B()
{
}
void B::showfunc()
{
cout<<b<<endl;
}
/**************************************/
// 这是 main.cpp
#include <iostream>
// #include "B.h"
using namespace std;
void main()
{
}
编译出现问题:
syntax error : missing ';' before identifier 'b'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2065: 'b' : undeclared identifier
问题出哪儿了? 展开
#ifndef _B_H
#define _B_H
#include <string>
class B
{
public:
B();
~B();
void showfunc();
string b;
};
#endif
// 源文件 B.cpp
#include <iostream>
#include <string>
#include "B.h"
using namespace std;
B::B()
{
}
void B::showfunc()
{
cout<<b<<endl;
}
/**************************************/
// 这是 main.cpp
#include <iostream>
// #include "B.h"
using namespace std;
void main()
{
}
编译出现问题:
syntax error : missing ';' before identifier 'b'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C2065: 'b' : undeclared identifier
问题出哪儿了? 展开
展开全部
在B.h文件下#include<string>后面加名字空间std的使用。编译器才能认得。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
头文件 B.h里在#include <string>后面添上一句using namespace std;
编译器没有认出string
编译器没有认出string
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询