如果不得已需要全局变量,则使全局变量加前缀 g_(表示 global)。

例如: int g_howManyPeople; // 全局变量 int g_howMuchMoney; // 全局变量

 #include <iostream>
#include<string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */ using namespace std;
//定义双亲(parent)类
class parent {
char f_name[];
char m_name[];
char tel[];
public:
// parent类的构造函数,其带有缺省值
parent(char *p1="",char *p2="",char *p3="") {
strcpy(f_name,p1);
strcpy(m_name,p2);
strcpy(tel,p3);
}
//显示parent对象的数据
show_parent(void) {
cout<<"The parent:"<<endl;
cout<<" father's name:"<<f_name<<endl;
cout<<" mother's name:"<<m_name<<endl;
cout<<" tel:"<<tel<<endl;
}
};
//定义student类
class student {
int num;
char name[];
float grade;
parent pt;
public:
// student类的构造函数
student(int n,char *str,float g,class parent t) {
num=n;
strcpy(name,str);
grade=g;
pt=t;
}
//显示student对象的数据
show_student(void) {
cout<<"num:"<<num<<endl;
cout<<"name:"<<name<<endl;
cout<<"grade:"<<grade<<endl;
pt.show_parent();
}
};
//main()函数测试student类的对象
int main(int argc, char** argv) {
//创建双亲对象
parent p1("ZhangHua","LiLan",""); //创建学生对象
student st(,"ZhangHui",91.5,p1); //显示学生信息
cout<<"p1:"<<endl;
p1.show_parent(); //显示学生信息
cout<<"st:"<<endl;
st.show_student();
return ;
}

如果不得已需要全局变量,则使全局变量加前缀 g_(表示 global)的更多相关文章

  1. c语言局部变量 静态局部变量 全局变量与静态全局变量

    基本概念: 作用域:起作用的区域,也就是可以工作的范围. 代码块:所谓代码块,就是用{}括起来的一段代码. 数据段:数据段存的是数,像全局变量就是存在数据段的 代码段:存的是程序代码,一般是只读的. ...

  2. static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?

    答案:全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量.全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式. 这两者在存储方式上并无不同.这两者的区别虽在于非静态全 ...

  3. 静态局部变量、静态全局变量、extern全局变量、自动变量 札记

    静态局部变量 静态局部变量. 从称呼上我们可以看出,静态局部变量首先是一个局部变量,因此其只在定义它的函数内有效,冠以静态的头衔后,其生存期就被延长了,不会随着函数的返回而被撤销.我们可以这样来理解: ...

  4. static全局变量与普通全局变量的区别,static局部变量与普通局部变量的区别,static函数与普通函数的区别

    static全局变量与普通全局变量的区别 static全局变量和普通全局变量的存储方式没有不同,如果它们都已经初始化,那么存放在进程的数据段中,否则存放在bss段.这两者的不同点在于作用域不同,当一个 ...

  5. JavaScript 放置在文档最后面可以使页面加载速度更快

    JavaScript 放置在文档最后面可以使页面加载速度更快

  6. Static全局变量与普通的全局变量有什么区别?static函数与普通函数有什么区别?

    Static全局变量与普通的全局变量有什么区别? 答: 全局变量(外部变量)的说明之前再冠以static就构成了静态的全局变量.全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式. 这两者 ...

  7. 预处理、const、static与sizeof-static全局变量与普通的全局变量有什么区别

    1:全局变量的说明之前再加上static就构成了静态的全局变量.全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式.这两者在存储方式上并无不同.这两者的区别在于,非静态全局变量的作用域是整 ...

  8. linux 文件名称前后缀操作函数----取目录函数dir、取文件名称函数notdir、取后缀函数suffix、取前缀basename、加后缀函数addsuffix、加前缀addprefix、连接函数join

    1.1       文件名操作函数 下面我们要介绍的函数主要是处理文件名的.每个函数的参数字符串都会被当做一个或是一系列的文件名来对待. 1.1.1        取目录函数dir $(dir < ...

  9. msyql 移动某一列数据到某列 & 字段加前缀

    #移动数据 UPDATE dcs_organize_user AS a, dcs_organize_user AS b SET a.SHORTTELNO=b.USERTELNO WHERE a.id= ...

随机推荐

  1. ubuntu安装chrome浏览器

    PPA方法,免FQ,否则,你得FQ下载chrome,你Firefox VPN配置好了吗!!! wget -q -O - https://raw.githubusercontent.com/longhr ...

  2. django中templates阅读笔记

    一.基本知识 1.模版是独立于django的,可以独立运行. 模版变量是用两个大括号括起来的字符串,表示变量.例如{{ person_name }} 模版标签,是用一对大括号和一对百分号括起来的,例如 ...

  3. java与数据库交互常用到的一些方法

    下面我整理了一下java中常用的几个与数据库交互的常用方法,仅供参考: 1.执行SQL(dao层的实现类中) (1)SQL查询: //import org.hibernate.Query;//impo ...

  4. PHP位操作符

    二进制怎么算 http://www.doc88.com/p-474114598610.html 这个涉及到系统底层,WEB开发中几乎没用到,知道下有这个东西就好了.底层的东西解释总是简单不了的. 变量 ...

  5. Spring Cloud 通过代码自定义配置Ribbon

    我们还是先从官网文档开始学习,如下图所示,我们可以搞一个测试配置类,来验证是否真的可以通过代码来自定义配置Ribbon,但文档明确给出了警告:即这个测试配置类不能放在@ComponentScan所扫描 ...

  6. Flume入门

    1.Flume是什么? ○ Flume是由cloudera开发的实时日志收集系统    ○ 核心概念是由一个叫做Agent(代理节点)的java进程运行在日志收集节点    ○ Flume在0.94. ...

  7. 《Effective Java》读书笔记一(创建与销毁对象)

    No1 考虑用静态工厂方法代替构造器 静态工厂方法优势: 它们有名称,阅读性增强,如:BigInteger.probablePrime: 不必每次调用它们的时候都创建一个新对象: 它们可以返回原返回类 ...

  8. 基于Spring 4.0 的 Web Socket 聊天室/游戏服务端简单架构

    在现在很多业务场景(比如聊天室),又或者是手机端的一些online游戏,都需要做到实时通信,那怎么来进行双向通信呢,总不见得用曾经很破旧的ajax每隔10秒或者每隔20秒来请求吧,我的天呐(),这尼玛 ...

  9. C# 获取指定目录下所有文件信息

    /// <summary> /// 返回指定目录下所有文件信息 /// </summary> /// <param name="strDirectory&quo ...

  10. zend studio 安装后一体化配置

    1.安装语言包http://www.eclipse.org/babel/downloads.php 11.0的时候仍然是junohttp://download.eclipse.org/technolo ...