原文地址:http://blog.csdn.net/wstarx/archive/2006/06/26/836373.aspx
题目是
#include <iostream>
int main()
{
std::cout<<"This is in main"<<std::endl;
return 0;
}
如何在不修改上述代码中mian()里面的部分,使输出的内容为:
Start
This is in main
End
解答:
此题我一开始想到的方法是重写std里得cout类,修改其中<<运算符的实现,经过面试我的高手提示,说是重载这个运算符比较危险,而且需要重写全部的函数不太现实。当时比较沮丧,没有想到其他的办法。
回来后,复习基础知识中发现有关于全局变量介绍的这么一句话:
全局对象在调用 main之前初始化, 在退出main之后析构
真是一语惊醒梦中人,完全可以用申明一个全局变量的方法实现上面这个题目。
具体实现代码如下,就是在main之前加了一个gb类的定义,然后在新建一个这个类的全局变量:
#include "stdafx.h"
#include <iostream>
class gb
{
public:
gb::gb()
{
std::cout<<"start"<<std::endl;
};
gb::~gb()
{
std::cout<<"end"<<std::endl;
};
};
gb a;
int main()
{
std::cout<<"This is in main"<<std::endl;
return 0;
}
分享到:
相关推荐
ELF格式可执行文件中全局对象构造与析构机制剖析
在C++中,声明一个类,并且定义一个全局变量,练习全局变量的使用。注意全局变量的使用技巧和方法。
注意:本文所说的全局变量指的是 variables with static storage,措词来自 c++ 的语言标准文档。 什么时候初始化 根据 C++ 标准,全局变量的初始化要在 main 函数执行前完成,常识无疑,但是这个说法有点含糊...
总结的c++面试试题,非常全面,并且大部分都有解答,希望对找工作的朋友有用,或者小型企业人事主管等非计算机专业面试出题有用 英华达: 1.限制变量的作用域 2.设置变量的存储域 7. 引用与指针有什么区别? 1) ...
C语言面试题大汇总之华为面试题:1、局部变量能否和全局变量重名;2、如何引用一个已经定义过的全局变量;3、全局变量可不可以定义在可被多个.C文件包含的头文件中 为什么;4、语句for( ;1 ;)有什么问题 它是什么...
C++中,全局变量只能声明、初始化,而不能赋值 也就是说,下面这样是不被允许的: #include using namespace std; int a; a = 2; int main() { return 0; } 错误提示是: C++ requires a type specifier for all...
用MFC制作的工程由很多文件构成,它不能象一般C++程序那样随意在类外定义全局变量,在这里要想定义能被工程内多个文件共享的全局变量和函数必须用一些特殊方法才行。实际上有多种方法可以实现,这里只介绍两种方法。
在多文件项目中使用全局变量进行参数传递的方法总结
目标:在一个线程运行的时候,主程序或者另一个线程,通过改变全局变量实时改变目标变量的做法,比如这里,楼主也就是我,为了在树莓派上运行一个tcp结构的客户端线程,并通过摄像头线程收集的数据实时的通过tcp客户端线程...
VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量VC中如何定义全局变量...
讲述了static,extern及全局变量的用法,通过实例讲解,上机运行通过,放心使用
当时想到的就是使用全局变量,在 app.js 中定义好全局变量,点击组件页面时就修改全局变量的值,父页面同样使用全局变量的值,这样一来就可以动态打开/关闭弹出层且传递值了。 下面先看看 app.js 中怎么定义的: ...
全局变量、局部变量、静态全局变量、静态局部变量的区别
3、全局区(静态区)(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后有系统释放 4、文字...
在C语言中使用extern 关键字来定义全局变量的时候,我们需要在.h文件和.c文件中重复定义,这种重复,导致了出错几率的增加。 今天,在整理自己的代码的时候,考虑到我写的代码从一至终都是在一个cpp文件里面。于是,...
我们可以通过代码1所示的示例程序观察到C++中一个关于全局类变量初始化顺序的有趣的现象。 class1.cpp #include cla
VB 全局变量举例 VB 全局变量举例 VB 全局变量举例
CC++中的静态全局变量,静态局部变量,全局变量,局部变量的区别
通过代码的运行,并理解代码,明白C中的局部变量与本地变量的区别