别名而不是糖语法的新变量
Alias instead of new variable for sugar syntax
考虑char firstLetter=word[0];
,除了将其用作糖以提高可读性之外,您不会对firstLetter
做任何事情。除了#define
之外,还有其他东西可以只做一个内联"别名"而不是分配新内存吗?我意识到可以编写脚本,但如果已经存在某些内容......
这里没有内存分配;word[0]
的值可以复制到寄存器或堆栈中,但这取决于编译器是否需要这样做。
请注意,"内联别名"会导致生成的代码更糟糕;表达式word[n]
意味着一些计算,如果使用某种替换,则会重复多次。
如果问题确实是关于C++的,您可以随时为对象创建别名:
char& firstLetter=word[0];
这将为word[0]
创建firstLetter
和别名(假设word
是一个数组,而不是稍后更改的指针)。
相关文章:
- C++:继续创建新的变量可以吗
- 定义C++新的环境变量并在 bat 文件中使用它
- 堆栈粉碎 在我在代码中添加新变量以及一些操作后C++检测到
- C++,每个循环初始化一个新的静态变量
- 非指针变量和类成员上的新放置
- 从 for 循环的每次迭代创建一个新变量
- 如何从构造函数声明新的私有变量?
- 嵌套的类成员变量不可访问.链表设置.V、下一个和新的问题
- 有没有办法初始化不涉及编写构造函数的新结构变量?
- 是否可以在没有结构的情况下创建新的类型变量?
- “auto”每次创建一个新的变量实例
- 使用C 中的Cython CDEF公共变量:变量永远不会初始化
- 字符串从变量(&变量)地址的长度 - 嵌入式C
- C++ 结构中的可选变量(变量结构)
- 用向量替换类新的[]变量-移动、复制运算符
- 我可以在构建一个新的变量模板参数时使用一个变量模板参数吗
- 未初始化的本地变量(变量是类中的对象)-MYSQL
- C共享对象,带有c++归档,静态变量/变量,和开放
- 变量>>变量在 c++ 中的含义是什么?
- 在类中构造新的变量使我的程序崩溃