为了账号安全,请及时绑定邮箱和手机立即绑定

为什么可以先在函数中调用变量后定义变量

例如

string m_strName;
string m_strGender;
int m_strScore;

为什么可以放在函数后面定义

正在回答

2 回答

和C语言不同,这是面向对象语言的特点之一,需使用的变量可以在当前任意位置定义,即使定义在调用的后面也可以使用,不仅仅是这里的封装,其他地方也可以这样。

至于这里为什么这样定义,这个得问开发出C++面向对象的人了,虽然我们习惯性的都先在public里进行调用,然后把定义的private部分写下面,但这不是硬性规定的,可以更换顺序。

函数返回函数外定义的变量是因为外面定义了变量即使是private也会是这个类中的全局变量,所以函数可以对这个变量进行更改,并且反馈出去,其实即使是函数内变量也可以return出去,不过就没有一个变量储存,而是直接返回一个值,不知道这个说法有没有错。。。

1 回复 有任何疑惑可以回复我~

这个在类中定义的成员变量,生命周期应该就是在对象存在的全周期。就是一个对象实例化出来的时候,变量就已经定义好了,而调用函数都是在对象出现之后。

1 回复 有任何疑惑可以回复我~
#1

Peppa_ 提问者

那调用的函数为什么,能返回 在函数外定义的变量
2019-02-14 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(上)
  • 参与学习       103411    人
  • 解答问题       701    个

封装--面向对象的基石,本教程力求帮助小伙伴们即学即会

进入课程

为什么可以先在函数中调用变量后定义变量

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信