Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
可修改的右值和 const 右值有什么区别?
string three return kittens const string four return are an essential part of a healthy diet 根据this https blogs msdn mic
c
rvalue
为什么我不能将右值 std::stringstream 按值传递给函数?
为什么这段代码不能编译 include
c
C11
movesemantics
rvalue
有没有办法在提供左值和右值重载的同时删除重复代码?
在学习 C 时 我决定编写一个简单的模板化二叉搜索树 bst 并遇到以下问题 我希望能够构造通过向其传递一个左值来实现 bst 例如const T val和一个像这样的右值T val 同样我希望能够insert左值和右值 所以我最终得到了很
c
overloading
codeduplication
rvalue
lvalue
如何有效地将左值或右值绑定到同一引用?
假设您有一个 C 函数 它使用 const 参数的更改版本 MyObject alter obj MyObject const obj Creates new altered object void func MyObject const
c
reference
ternaryoperator
rvalue
lvalue
关于如何识别右值或左值引用以及 if-it-has-a-name 规则
我正在读托马斯 贝克尔的书article http thbecker net articles rvalue references section 05 html关于右值引用及其使用 在那里他定义了他所说的如果它有一个名字 rule 声明为
c
C11
rvaluereference
lvalue
rvalue
了解使用右值/左值的模板参数推导
这是来自的后续函数模板无法识别左值 https stackoverflow com questions 22166767 template function does not recognize lvalue 22166879 221667
c
templates
C11
lvalue
rvalue
是否可以获得“this”指针的地址?
我读到了this是一个右值 我们无法通过应用来获取它的地址 this 在我的代码中 我尝试使用引用绑定this 我想知道哪种方式可以给出地址this 还是两者都错了 到底是什么this 左值 右值 关键字还是其他什么 void MyStri
c
reference
This
rvaluereference
rvalue
为什么占用临时地址是非法的?
我知道下面写的代码是非法的 void doSomething std string s int main doSomething std string Hello World return 0 原因是我们不允许获取临时对象的地址 但我的问题
c
temporary
memoryaddress
lvalue
rvalue
具有适用于左值和右值的引用参数的 C++ 函数
我想要一个 C 函数 它接受一个参数 即一个引用 并且适用于左值和右值相同的语法 举个例子 include
c
function
reference
rvalue
lvalue
文字值的范围是什么?编译器如何为其分配内存?
int x 12 12被认为是整数文字 因此不能在 LValue 中使用 编译器如何为文字分配内存 文字的范围是什么 为什么我们无法获取其范围内包含 12 的地址 好的 问题中的例子不好 但问题仍然有效 咱们试试吧 Foo getFoo r
c
object
scope
rvalue
C++0x const RValue 引用作为函数参数
我试图理解为什么有人会编写一个需要常量右值引用 在下面的代码示例中 const 右值引用函数 返回 3 的用途是什么 为什么重载解析优先考虑 const Rvalue 而不是 const LValue 引用函数 返回 2 include
c
C11
lvalue
rvalue
overloadresolution
C++ - 自动返回引用和非引用类型
当编写函数时auto我们可以使用的返回类型constexpr if返回不同类型 auto myfunc constexpr if someBool type1 first something return first else type2
c
reference
AUTO
rvalue
lvalue
为什么 as_const 禁止右值参数?
我想问为什么as const禁止右值参数 根据 http en cppreference com w cpp utility as constcppreference com 即为什么标准人员这样做 而不是为什么 cppreference
c
rvalue
C17
右值引用和左值引用作为参数之间的区别
读完帖子后 http www cprogramming com c 11 rvalue references and move semantics in c 11 html http www cprogramming com c 11 rv
c
reference
overloading
lvalue
rvalue
C++11 左值、右值和 std::move()
我有以下代码 include
c
C11
overloadresolution
rvalue
const_cast 的行为
我正在阅读有关 C 中的 const cast 运算符的内容 1 我无法理解的第一件奇怪的事情是 const cast 运算符语法 即 const cast 表达式 gt 我对这种语法的理解是 它有助于摆脱常量性expressionof t
c
casting
lvalue
rvalue
为什么可以分配给类类型的右值?
为什么这段代码可以编译 我认为构造函数返回的右值不位于内存中 因此不能用作左值 class Y public explicit Y size t num 0 int main Y 1 Y 0 WHAT return 0 根据参见 12 8
c
C11
languagelawyer
rvalue
lvaluetorvalue
获取 const 左值引用的地址是否合法?
include
c
lvalue
rvalue
const 引用是否会延长临时对象返回的临时对象的寿命?
我知道常量引用可以延长本地临时变量的寿命 现在我问自己是否可以将这种专有性扩展到临时对象链上 也就是说 我是否可以安全地定义 std string const foo aBar getTemporaryObject1 getTemporar
c
lifetime
rvalue
temporaryobjects
referencebinding
数组和右值(作为参数)
我想知道是否有任何方法可以区分以下代码中显示的函数调用 以数组作为参数 include
c
Arrays
C11
rvaluereference
rvalue
1
2
»