*st和st有啥区别

哎呀,之前编程的时候,因为看不懂st和st的区别,差点让项目陷入困境。

那一年大概是2 01 5 年,我在一家互联网公司做程序员。
当时我们团队承担了一个大项目,搭建数据分析平台。
我记得我写了一个函数,里面有一个名为 st 的变量。
那一刻,我心想,这东西看起来像一个指针,但我不知道如何使用它。

我写了一些不错的代码并提交了,但是当我测试时发现数据有问题。
我一看,天哪,指针错了,应该是st,但是前面的星号用错了地方,导致整个指针指向了错误的数据类型,得到的数据自然也是错误的。

然后我很快就改了,项目没有出现什么大问题。
这时我想起st声明了一个指针。
st 可以是变量或其他标识符。
这取决于具体的上下文。

现在想来,编程确实是一个很微妙的工作。
如果一个符号错误,整个逻辑就会混乱。
所以兄弟们,你们学习编程的时候,一定要了解这些基础的东西,不要像我当时一样迷茫。

EasyC++32,引用的使用

哎,说实话,当我第一次接触C++的时候,是不知所措的。
我记得2 01 2 年,我在北京参加C++培训。
当时老师在讲名言,我完全糊涂了。

引用,简单来说就是给出另一个定义的变量。
就像你的朋友叫小明,你就可以说“阿狗”吧?这是关系的开始,昵称是一个变量,但它有一个属性,必须在初始化时绑定,绑定后不能更改。

我记得老师举了一个例子,说“inta=3 ; int&b=a”,然后“b指a”。
我当时就疑惑了,这不就是直接写b=a吗?后来老师解释说b不是简单的赋值,而是b是一段内存,是同一个地址的一部分。
如果你改变b,你实际上改变了a。

与索引相比,品牌的初始化要求要严格得多。
指针可以先声明然后赋值,但字符不能。
当他们声称是的时候,他们就必须被拘留。
我记得有位同学错了,“int&b;”他这样写,结果编译器直接报错,说非法。

此外,关系在绑定时不能更改,但指针可以。
这和小明的名字很相似。
一旦你叫他小明,你就不再叫他小红,而是有一天给新朋友起的新名字。

说说地址的一致性。
引用和变量的地址是相同的,这证明它们对同一个对象有不同的名称。
我试图在输出框中找到地址a和b。

通过比较方式传递参数时,最适合传递大对象,比如向量。
因为传递关系不会复制整个对象作为传递值,这样可以节省内存,提高效率。

此外,传递关系可以直接改变实际参数,而传递值只能作用于模型。
我记得我写了一个使用引用传递参数的交换函数,它可以直接交换两个数字。
他觉得这样很方便。

一般来说,引用使代码更简单、更安全且性能更好。
但是,使用指针时,请注意不要将它们绑定到非法变量,例如 null 或未定义的变量。
函数还返回对局部变量的引用是非常危险的,可能会导致悬空数据。

那么,这东西,用得好的话,确实厉害,用不好的话,那就麻烦了。
你被驯服得很好。

c++中&是什么符号 引用运算符功能全面解析

嘿嘿,你写的真详细,就像教科书一样。
事实上,当我第一次学习C++时,我对&符号感到困惑。

我记得第一次使用它是在2 004 年,当时公司正在建设一个数据收集系统。
有一个非常大的结构,包含数百个浮点数。
那时我还没有学会如何使用引用,所以每次传输都会卡住,甚至在复制后CPU也会冒烟。
后来一位老人给了我一些建议,说我应该用一句话来表达。
结果是肯定更快了。
Just pass the address of the large structure directly, and if you change it in the function, the original location will also change, saving a lot of work.
但是引用这件事也是有误导性的。
在 2 007 年的一个项目中,我编写了一个返回局部变量引用的函数。
我测试的时候没发现,客户端使用的时候就崩溃了。
经过大量调试后,我意识到这是一个悬空引用。
局部变量已经不存在了,那为什么还要更改它呢?从那时起,我在返回引用时一直很小心,以确保返回的对象是全局或长期存在的对象。

另外,你需要更加关注多线程。
在我们1 0年前建立的银行系统中,数据的引用和传输没有锁定。
结果,数据出现偏差,客户投诉颇多。
后来我加了互斥锁,问题就解决了。
因此,在多线程中使用引用时,必须特别小心,不能像单线程那样随意传递。

一般来说,引号很容易使用,节省内存和时间,但如果使用不好,很容易导致大问题。
关键是了解它的工作原理并知道何时使用它以及何时不使用它。
你总结得很好,别吓唬新手,一步一步慢慢理解。