类的声明(一般叫类的前向声明) :不是一个完整的类,现在还不能实例化对象只能用于定义指向该类的指针和引用作为函数的形参或者返回值。
类的声明:
class Ha
{
public:
Ha() {}/兄猜/构造函数
virtual ~Ha(){}//析构函数
void show() {cout <<"Hi C" <<endl}
}
类的声明羡物型:
class Ha//声明一个还未定义的类供其他函数或者类的方法用作形参或者返回值 但是在这个类未定义前不能创建一个Ha对象更不能直接引用类中的某个成员。
class Wa
{
public:
Wa(){}
virtual ~Wa(){}
Ha VisitHa (Ha&ha)
/*{
// 注意**现在在VisitHa函数体中访问未定义的ha成员是不允许的 应该放在Ha定义的后面 所以我在这里把它的函数体注释了起来
ha.show()
return ha
}*/
}
你可以试一下,实现文件不含 #include <iostream>。iostream -- 输入输出流。御锋肢
通常 因为是分开的2个文件,分开编译时,如果 里面 遇到 与输入输出 有关 函数 时, 需要 函数镇世原型, 这时需要 头文件。 一般 标准头文件 有 宏保护 指令, 重复包含了, 它会 只包含一次,忽略 多余的 #include。
所以 , 写多了 不基旅要紧, 写少了 不行。
大致包含或激3种文件(1)类声明文件
(2)类实现文件
(3)主函数(main)文件,引用.h(类声明文件尺团郑)
node.h//声明
class node{
private:
int x
public:
node()//只声明不实现
void setX(int)//只声明不实陵颂现
int getX()//只声明不实现
}
node.cpp//实现
node::node(){//实现
........
}
vopid node::setX(int t){
this->x=t
}
int node::getX(){
return x
}
Main.cpp//主文件(main函数所在文件)
#include"node.h"//引用类文件node.h
#include<iostream>
int main(){
node t
t.setX(10)
std::cout<<t.getX()输出10
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)