avatar
b*i
2
C++里面,如果有一个函数
const int foo()
{
return 5;
}
或者是一个对象
const Object bar()
{
...
}
这里const干啥用的?
我同事说只能赋值给常值变量,比如const int i = foo();但是我试了,好像可以随便。
我觉得他和 const Obj& obj = bar_();混了,如果是返回一个引用。这个时候我们不
希望变量随便改写引用的内容。
avatar
t*n
3
正好打牌,分别起名为红桃、方片、黑桃、草花

【在 d****z 的大作中提到】
: 家里四个Eink Reader,成灾了!
avatar
l*s
4
奇葩
avatar
e*y
5
我也在忍, 说不定马上要步你后尘了

【在 d****z 的大作中提到】
: 家里四个Eink Reader,成灾了!
avatar
w*g
6
没见过const这么用的。如果是constexpr,则函数会在编译时被求知。

【在 b***i 的大作中提到】
: C++里面,如果有一个函数
: const int foo()
: {
: return 5;
: }
: 或者是一个对象
: const Object bar()
: {
: ...
: }

avatar
m*e
7
互相鼓励一把.忍的滋味真不好受

【在 e***y 的大作中提到】
: 我也在忍, 说不定马上要步你后尘了
avatar
h*l
8
to prevent assignment to bar() like bar() = Object();
typically this is used in operator methods like ++ (prevent a++++), + (
prevent a+b =c)

【在 b***i 的大作中提到】
: C++里面,如果有一个函数
: const int foo()
: {
: return 5;
: }
: 或者是一个对象
: const Object bar()
: {
: ...
: }

avatar
d*z
9
都是你们整天炫耀惹的
avatar
b*i
10
不用const也行吧?
比如
int foo()
{
return 5;
}
也不能foo()=6啊
我说过我理解const Obj& foo(),不理解const int foo()

【在 h**l 的大作中提到】
: to prevent assignment to bar() like bar() = Object();
: typically this is used in operator methods like ++ (prevent a++++), + (
: prevent a+b =c)

avatar
r*e
11
我已经有普通版的K3和老版KDX了,现在在忍住不进KSO

【在 e***y 的大作中提到】
: 我也在忍, 说不定马上要步你后尘了
avatar
h*l
12
不用const对基本类型(比如 int)是可以,对user defined type, 如果你想避免这种奇
怪的assignment, 你需要return type加const. 当然如果你要支持move semantics,就
不要这样做。
我不是说return type是const Obj&这种情况, 是 Obj 或者 const Obj

【在 b***i 的大作中提到】
: 不用const也行吧?
: 比如
: int foo()
: {
: return 5;
: }
: 也不能foo()=6啊
: 我说过我理解const Obj& foo(),不理解const int foo()

avatar
e*y
13
能不能把原版k3刷成kso阿...
上个月买了5个kso回国送人, 自己一个没留, 后悔了

【在 d****z 的大作中提到】
: 都是你们整天炫耀惹的
avatar
a9
14
int a = foo();
a = 6; //这里会出异常? 我瞎猜的

【在 b***i 的大作中提到】
: 不用const也行吧?
: 比如
: int foo()
: {
: return 5;
: }
: 也不能foo()=6啊
: 我说过我理解const Obj& foo(),不理解const int foo()

avatar
d*z
15
哦,这个据说不行

【在 e***y 的大作中提到】
: 能不能把原版k3刷成kso阿...
: 上个月买了5个kso回国送人, 自己一个没留, 后悔了

avatar
b*e
16
foo 是一个返回 const int 的函数。
这 const 是多余的。因为return 的东西是 r-value, 本来就不能改。
如果是 const char * 或者 const char &, 这里的const 是修饰char, 而不是
整个return type, 所以不是多余的。
也可以写成 char const * 或者 char const &.

【在 b***i 的大作中提到】
: C++里面,如果有一个函数
: const int foo()
: {
: return 5;
: }
: 或者是一个对象
: const Object bar()
: {
: ...
: }

avatar
r*e
17
我老一直在琢磨这个,结论是no way

【在 e***y 的大作中提到】
: 能不能把原版k3刷成kso阿...
: 上个月买了5个kso回国送人, 自己一个没留, 后悔了

avatar
h*l
18

For user-defined type, it is okay to assign to r-value, as the assignment
operator defined by the user may do something useful. It is probably not
a good practice though, but c++ standard committee may just want to allow
maximum flexibility.
Generally if we want to disable bizarre assignment statement like a+b=c or a
*b=c for user defined type, write operator+ (operator*) overload method to
return const. The disadvantage is that if a+b or a*b is used as a function
argument, they can not be bound to parameter of r-value reference type, thus
move is not allowed.

【在 b*****e 的大作中提到】
: foo 是一个返回 const int 的函数。
: 这 const 是多余的。因为return 的东西是 r-value, 本来就不能改。
: 如果是 const char * 或者 const char &, 这里的const 是修饰char, 而不是
: 整个return type, 所以不是多余的。
: 也可以写成 char const * 或者 char const &.

avatar
e*y
19
现在手上有k3和prs950, kdx去年local卖了
这个kso的coupon要是自己用上几个, 基本就把成本收回了

【在 r*******e 的大作中提到】
: 我已经有普通版的K3和老版KDX了,现在在忍住不进KSO
avatar
b*i
20
明白了,多谢!

【在 h**l 的大作中提到】
: 不用const对基本类型(比如 int)是可以,对user defined type, 如果你想避免这种奇
: 怪的assignment, 你需要return type加const. 当然如果你要支持move semantics,就
: 不要这样做。
: 我不是说return type是const Obj&这种情况, 是 Obj 或者 const Obj

avatar
r*e
21
自用个20% off laptop的,岂止是收回成本。。

【在 e***y 的大作中提到】
: 现在手上有k3和prs950, kdx去年local卖了
: 这个kso的coupon要是自己用上几个, 基本就把成本收回了

avatar
h*l
22
Another way to disable such bizarre assignment to r-value is to do the
following
MyClass& operator=(const MyClass& other) && = delete;
while at the same time allow move for r-value.

【在 b***i 的大作中提到】
: 明白了,多谢!
avatar
w*1
23
我也觉得是,本来可买可不买的,这下花出去快一千,亏大发了。

【在 r*******e 的大作中提到】
: 自用个20% off laptop的,岂止是收回成本。。
avatar
b*i
24
= delete前面放个&& 这是个什么意思呢?

【在 h**l 的大作中提到】
: Another way to disable such bizarre assignment to r-value is to do the
: following
: MyClass& operator=(const MyClass& other) && = delete;
: while at the same time allow move for r-value.

avatar
r*e
25
lol,反正2012地球都得格式化,现在买了还能享受几天

【在 w****1 的大作中提到】
: 我也觉得是,本来可买可不买的,这下花出去快一千,亏大发了。
avatar
h*l
26
&& means disable assignment for r-value
& means disable assignment for l-value
no & or && means disable assignment for both.

【在 b***i 的大作中提到】
: = delete前面放个&& 这是个什么意思呢?
avatar
d*z
27
我有个套子本来是用NOOK的,后来发现7寸本子也可以塞进去,刚才试了一下K3竟然也
正好跟定做的一样,真是神套!
avatar
t*n
28
amazon应该把KSO的定价比老版贵才对

【在 w****1 的大作中提到】
: 我也觉得是,本来可买可不买的,这下花出去快一千,亏大发了。
avatar
t*n
29
我有个碗是用来吃饭的,后来发现装菜也可以,刚才试了一下居然还能盛汤,真是神碗!

【在 d****z 的大作中提到】
: 我有个套子本来是用NOOK的,后来发现7寸本子也可以塞进去,刚才试了一下K3竟然也
: 正好跟定做的一样,真是神套!

avatar
d*z
30
FT,你自己找个套子试试看,不用自己改动就能通吃的还真不多

碗!

【在 t******n 的大作中提到】
: 我有个碗是用来吃饭的,后来发现装菜也可以,刚才试了一下居然还能盛汤,真是神碗!
avatar
a*m
34
link ? how much?

【在 d****z 的大作中提到】
: 有图有真相,神套
avatar
g*g
35
我也有这么一个,在bb买的,好像花了20刀,有点重,其它都好

【在 d****z 的大作中提到】
: 有图有真相,神套
avatar
g*g
36
哪里买的?
前些天bb那个139-30的是special offer版吗?那次我应该跳的

【在 d****z 的大作中提到】
: 家里四个Eink Reader,成灾了!
avatar
d*z
37
BB,没COUPON,没折扣,139+TAX买的

【在 g*g 的大作中提到】
: 哪里买的?
: 前些天bb那个139-30的是special offer版吗?那次我应该跳的

avatar
k*e
38
同问,跳了一个kindle,觉得还是应该有个套子,安全点。

【在 a*m 的大作中提到】
: link ? how much?
avatar
d*g
39
AMEX在BB有$10 off $100,先注册一下就行,聊胜于无了
我也是在BB买的。Toys有WiFi KSO卖,拿GC买也还行

【在 g*g 的大作中提到】
: 哪里买的?
: 前些天bb那个139-30的是special offer版吗?那次我应该跳的

avatar
d*z
40
去BESTBUY看看吧

【在 k***e 的大作中提到】
: 同问,跳了一个kindle,觉得还是应该有个套子,安全点。
avatar
g*g
41
我们这里税太高。我还是amazon吧

【在 d********g 的大作中提到】
: AMEX在BB有$10 off $100,先注册一下就行,聊胜于无了
: 我也是在BB买的。Toys有WiFi KSO卖,拿GC买也还行

avatar
m*c
42
你的一定是nook一代,不是nook simple touch。

【在 d****z 的大作中提到】
: 我有个套子本来是用NOOK的,后来发现7寸本子也可以塞进去,刚才试了一下K3竟然也
: 正好跟定做的一样,真是神套!

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。