针对“不能返回局部变量的引用”这句话,小弟我想问问下面这段代码问什么可以正常运行

针对“不能返回局部变量的引用”这句话,我想问问下面这段代码问什么可以正常运行。#include iostreamusing

针对“不能返回局部变量的引用”这句话,我想问问下面这段代码问什么可以正常运行。
#include <iostream>
using namespace std;
class A
{
public:
    A(){cout<<"执行构造函数创建一个对象\n";}
    A(A&){cout<<"执行复制构造函数创建该对象的副本\n";}
    ~A(){cout<<"执行析构函数删除对象\n";}
    void set(int i){x=i;}
    int get()const{return x;}
private:
    int x;
};
A& func( A& one)
{
    return one;
}
int main()
{
    A a;
    a.set(11);
    A& b=func (a);
    cout<<b.get()<<endl;
    b.set(33);
    cout<<b.get()<<endl;
    return 0;
}


首先声明,我刚学c++,大神轻喷!
这是我在范磊c++学习视频上看的一段代码,我用eclipse运行成功。
这里有个问题,我查的资料上写的是,“不能返回局部变量的引用”,我想说这段代码和这句话矛盾吗,如果矛盾的话,添加些什么代码能证明它有错? C++ 局部变量 对象
[解决办法]
func中的 one不是局部变量
[解决办法]
引用:
啊~~不是啊,我以为在大括号里的都是局部变量?


用了引用怎么还会是局部变量
[解决办法]
http://blog.csdn.net/mougaidong/article/details/7016656
[解决办法]
A& func( A& one)//one可是引用
{
    return one;
}