由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 请教一个作用域的问题
相关主题
题2private destructor
a simple question for C++ class小白请教一个C++问题:问什么我不能把两个指针=起来?
C++疑问请问一个exception题目
[合集] C++问题(copy constructor)两个继承问题
问一个简单的C++问题为什么我看不懂下面的code,是不是水平还不够?
C++菜问: 怎么这样也可以?two c++ interview questions! (转载)
大家来做题C++。compare double to float
小问题一个指向指针的指针的引用?
相关话题的讨论汇总
话题: 作用域话题: int话题: main话题: 访问话题: endl
进入Programming版参与讨论
1 (共1页)
s******u
发帖数: 247
1
#include
using namespace std;
int main() {
int M=20;

int M=-303340;
cout<<"Local M="< }
cout<<"Main M="< }
如果我想在这个block中访问外部的M,是不是只能用指针来访问?有没有什么办法在前
面加上作用域来区分啊?
谢谢。
k****f
发帖数: 3794
2
为什么不能换个名字?

【在 s******u 的大作中提到】
: #include
: using namespace std;
: int main() {
: int M=20;
: 『
: int M=-303340;
: cout<<"Local M="<: }
: cout<<"Main M="<: }

f*********i
发帖数: 137
3
如果 int M 定义在main()之前做全局变量,就可以用::M
不知道你这种情况除了换个名字还能干什么

【在 k****f 的大作中提到】
: 为什么不能换个名字?
c***h
发帖数: 80
4
不能从作用域内访问外面是C++的铁律。当然你也可以通过汇编来倒着找堆栈来得到外
面M的值;)

【在 s******u 的大作中提到】
: #include
: using namespace std;
: int main() {
: int M=20;
: 『
: int M=-303340;
: cout<<"Local M="<: }
: cout<<"Main M="<: }

s******u
发帖数: 247
5
谢谢各位。搞清楚了。不过cpooh说不能从作用域内访问外面是C++的铁律,为什么呢?
我可以通过scope作用访问到到域外的变量啊。
1 (共1页)
进入Programming版参与讨论
相关主题
一个指向指针的指针的引用?问一个简单的C++问题
问个char*的问题C++菜问: 怎么这样也可以?
数组弱问大家来做题C++。
[合集] 关于构造函数小问题
题2private destructor
a simple question for C++ class小白请教一个C++问题:问什么我不能把两个指针=起来?
C++疑问请问一个exception题目
[合集] C++问题(copy constructor)两个继承问题
相关话题的讨论汇总
话题: 作用域话题: int话题: main话题: 访问话题: endl