c++中在类外定义函数

  c++中有时候类中的成员函数过长,那么此时在类内定义成员函数就不利于程序的阅读了,此时我们大都会将是函数定义在类外。


  c++中规定,在类外定义成员函数时要用类名和作用域运算符进行限定。


  如程序:


#include<iostream>
using namespace std;
class Student
{
    public :
         void show();    //在类内声明成员函数show()
         void record(string n,string stunum,string s)
         {
             name=n;
             studentnumber=stunum;
             sex=s;
         }
   private:
         string name;
         string studentnumber;
         string sex;
};
void Student::show()    //在类外定义函数时要加上类名和作用域运算符
{
    cout<<"name:"<<name<<endl;
    cout<<"studentnumber:"<<studentnumber<<endl;
    cout<<"sex:"<<sex<<endl;
}
int main()
{
    Student student;
    student.record("wang","123456","nan");
    student.show();
    return 0;
}
注意:


 1.函数在类内定义和在类外定义效果是一样的,只是对于较长的程序函数放在类外更有利于读程序;


 2.在类外定义成员函数时必须现在类内写出成员函数的原型声明,然后再在类外定义;


 3.如果在类外有定义,但是在函数名前没有类名和作用域运算符,则该函数被认为是普通函数;


 4.在类内声明成员函数,在类外定义成员函数,是软件工程中良好的编程风格
  • 6
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值