已采纳回答 / s_word
所有使用了include的地方,你可以理解为将被包含的文件内容原样拷贝到该位置。所以,如果a.cpp在文件头包含了a.h,然后a.h在文件头包含a.cpp,那就会成为一条首尾相衔的蛇,陷入无限循环。换句话说,a.h不能包含a.cpp,完全没这个必要,因为a.h没有用到a.cpp中的任何东西。为什么demo里包含了a.h,却能用上a.cpp里的东西?其实a.cpp是和main一起被编译到同一个project中的,在文件包含关系上并没有体现出来。demo包含了a.h的话,就能获得a中所有属性和方法的定义,便能...
2016-08-31
已采纳回答 / 幕间客
const double pi = 314; //正确const double pi; pi = 2.0; //错误可见初始化的"="与赋值的"="性质完全不一样,不是简单的赋值可以参考一下这段回答http://tieba.baidu.com/p/2212411930
2016-08-29
int main()
{
Student stu;
stu.setName("慕课网");
cout<<stu.getName()<<endl;
return 0;
}
{
Student stu;
stu.setName("慕课网");
cout<<stu.getName()<<endl;
return 0;
}
#include <iostream>
#include <string>
using namespace std;
class Student
{
public:
// 定义数据成员封装函数setName()
void setName(string str)
{
m_strName=str;
}
string getName()
{
return m_strName;
}
private:
string m_strName;
};
#include <string>
using namespace std;
class Student
{
public:
// 定义数据成员封装函数setName()
void setName(string str)
{
m_strName=str;
}
string getName()
{
return m_strName;
}
private:
string m_strName;
};