由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - c++如果调用没参数的函数不用加()就好了
相关主题
[求教大虾]关于C++编译期变量和运行期变量的区别,总是有疑惑C++编程原则的问题
刚看完类这一章,有些大小问题,请指教,谢谢C++编程问题:union inside struct
Linus Torvald有多少钱?关于placement new
Linus Torvalds因内核注解标点格式发飙 solidot teikaei 21小时54分钟前 Linus Torvalds在Linux内核邮件开发者列表上再次发飙,将部分程序员偏爱的代码注解标点格式称为“脑残”。他强烈反对的注解格式类似:/* This is disgusting drug-induced * crap, and should die */(具体见下图) http://static.cnbetacdn.com/article/2016/0713/00a2039be872C++的"初始化"小结
Linus Torvalds: Java A Horrible Language - YouTubeC++ pointer to function is buggy
牛人就是拽:Linus Torvalds一直讨厌这11项技术问个a=b 的问题
R似乎根本就没有认真考虑过global variable的改写问题解释一下吧Re: C语言的前途
请教c++里函数调用的问题C++如何pass一个变量给一个函数,但是函数声明却没有这个变量?
相关话题的讨论汇总
话题: c++话题: 函数话题: reference话题: 变量话题: 赋值
进入Programming版参与讨论
1 (共1页)
N******K
发帖数: 10202
1
这样会方便多了
e*******o
发帖数: 4654
2
perl 如此。

【在 N******K 的大作中提到】
: 这样会方便多了
b*******s
发帖数: 5216
3
印象中有些编译器是可以的

【在 N******K 的大作中提到】
: 这样会方便多了
N******K
发帖数: 10202
4
gcc clang 都不行 刚试了

【在 b*******s 的大作中提到】
: 印象中有些编译器是可以的
g*********e
发帖数: 14401
5
方便哪了?

【在 N******K 的大作中提到】
: 这样会方便多了
N******K
发帖数: 10202
6
objectA.name = "abc"
其实这个 name是个成员函数
std::string& name()
{
return this->Data->name;
}

【在 g*********e 的大作中提到】
: 方便哪了?
l*********s
发帖数: 5409
7
直接声明公开成员变量。

【在 N******K 的大作中提到】
: objectA.name = "abc"
: 其实这个 name是个成员函数
: std::string& name()
: {
: return this->Data->name;
: }

N******K
发帖数: 10202
8
啥意思?

【在 l*********s 的大作中提到】
: 直接声明公开成员变量。
b*******s
发帖数: 5216
9
http://stackoverflow.com/questions/7623778/how-does-stdendl-not
可能对你有点用

【在 N******K 的大作中提到】
: objectA.name = "abc"
: 其实这个 name是个成员函数
: std::string& name()
: {
: return this->Data->name;
: }

l*********s
发帖数: 5409
10
就不用括号了啊

【在 N******K 的大作中提到】
: 啥意思?
相关主题
牛人就是拽:Linus Torvalds一直讨厌这11项技术C++编程原则的问题
R似乎根本就没有认真考虑过global variable的改写问题C++编程问题:union inside struct
请教c++里函数调用的问题关于placement new
进入Programming版参与讨论
g*********e
发帖数: 14401
11
就是少写两个括号?

【在 N******K 的大作中提到】
: objectA.name = "abc"
: 其实这个 name是个成员函数
: std::string& name()
: {
: return this->Data->name;
: }

f*******t
发帖数: 7549
12
Ruby可以不写 代码没法看

★ 发自iPhone App: ChineseWeb 8.7

【在 N******K 的大作中提到】
: 这样会方便多了
N******K
发帖数: 10202
13
举个例子?

【在 f*******t 的大作中提到】
: Ruby可以不写 代码没法看
:
: ★ 发自iPhone App: ChineseWeb 8.7

q*c
发帖数: 9453
14
我是完全没法理解为了写的短而让读的人不清楚这种思维。
就是为了面子伤里子。

【在 N******K 的大作中提到】
: 这样会方便多了
N******K
发帖数: 10202
15
a.Name()="abc“ 这样你就读懂了?

【在 q*c 的大作中提到】
: 我是完全没法理解为了写的短而让读的人不清楚这种思维。
: 就是为了面子伤里子。

g*********e
发帖数: 14401
16
这个跟明显是一个返回字符串的函数

【在 N******K 的大作中提到】
: a.Name()="abc“ 这样你就读懂了?
q*c
发帖数: 9453
17
这个就很明显~ 不对
a.name() 函数内部生成一个对象,对象的饮用返回前拷贝进临时变量。然后函数内部
那个对象饮引用丢失。 这个临时变量在等号左面, 然后被赋值为 abc , 导致他本身
的引用丢失, 然后新得到的 abc 也立刻丢失。
这样函数内部产生的对象丢失,临时对象丢失,abc 赋值的对象丢失。
这样到底要干啥?
我猜测是想改变函数内部某个全局变量的状态, 但是这本身就不是好主义。
或者是要重新定义函数?

【在 N******K 的大作中提到】
: a.Name()="abc“ 这样你就读懂了?
t****t
发帖数: 6806
18
你这C++学太差了...这个写法没见过, vector的a[i]=1总见过的吧. 一样的道理.

【在 q*c 的大作中提到】
: 这个就很明显~ 不对
: a.name() 函数内部生成一个对象,对象的饮用返回前拷贝进临时变量。然后函数内部
: 那个对象饮引用丢失。 这个临时变量在等号左面, 然后被赋值为 abc , 导致他本身
: 的引用丢失, 然后新得到的 abc 也立刻丢失。
: 这样函数内部产生的对象丢失,临时对象丢失,abc 赋值的对象丢失。
: 这样到底要干啥?
: 我猜测是想改变函数内部某个全局变量的状态, 但是这本身就不是好主义。
: 或者是要重新定义函数?

g*********e
发帖数: 14401
19
return reference

【在 q*c 的大作中提到】
: 这个就很明显~ 不对
: a.name() 函数内部生成一个对象,对象的饮用返回前拷贝进临时变量。然后函数内部
: 那个对象饮引用丢失。 这个临时变量在等号左面, 然后被赋值为 abc , 导致他本身
: 的引用丢失, 然后新得到的 abc 也立刻丢失。
: 这样函数内部产生的对象丢失,临时对象丢失,abc 赋值的对象丢失。
: 这样到底要干啥?
: 我猜测是想改变函数内部某个全局变量的状态, 但是这本身就不是好主义。
: 或者是要重新定义函数?

q*c
发帖数: 9453
20
的却学的差。。。而且都快忘光了
当 java 了,呵呵

【在 t****t 的大作中提到】
: 你这C++学太差了...这个写法没见过, vector的a[i]=1总见过的吧. 一样的道理.
相关主题
C++的"初始化"小结解释一下吧Re: C语言的前途
C++ pointer to function is buggyC++如何pass一个变量给一个函数,但是函数声明却没有这个变量?
问个a=b 的问题问个C++ Segmentation Fault的问题
进入Programming版参与讨论
N******K
发帖数: 10202
21
你就认个慫好了

【在 q*c 的大作中提到】
: 的却学的差。。。而且都快忘光了
: 当 java 了,呵呵

q*c
发帖数: 9453
22
我不是已经认怂了嘛?
但是不表明我所有观点都怂。 比如 set*** 更加清晰明确就是对的,

【在 N******K 的大作中提到】
: 你就认个慫好了
e********3
发帖数: 18578
23
确实很confusing,但是Ruby的理念就是不区分函数和变量。

【在 f*******t 的大作中提到】
: Ruby可以不写 代码没法看
:
: ★ 发自iPhone App: ChineseWeb 8.7

f*******t
发帖数: 7549
24
看似很酷,实则SB。
我鄙视ruby之类不从全局考虑用的语言。
工作中开发代码只占一小块成本, 维护的代价并不比开发低。
搞这些语言让写代码的人爽了,但维护无比困难、痛苦,真的有意义吗?
像ruby中这种语句:
a = obj.b
在读代码时不能直接看出b是变量还是函数。没有IDE支持,搜索b到底是什么东西还得
花不少时间。写的时候少打几个括号,维护时多花N分钟做无用功。

【在 e********3 的大作中提到】
: 确实很confusing,但是Ruby的理念就是不区分函数和变量。
q*c
发帖数: 9453
25
其实我发现有个通用规律 --
喜欢这些玩意的人基本都很自我中心, 左派的比例是特别的大。
做人还真是一贯的

【在 f*******t 的大作中提到】
: 看似很酷,实则SB。
: 我鄙视ruby之类不从全局考虑用的语言。
: 工作中开发代码只占一小块成本, 维护的代价并不比开发低。
: 搞这些语言让写代码的人爽了,但维护无比困难、痛苦,真的有意义吗?
: 像ruby中这种语句:
: a = obj.b
: 在读代码时不能直接看出b是变量还是函数。没有IDE支持,搜索b到底是什么东西还得
: 花不少时间。写的时候少打几个括号,维护时多花N分钟做无用功。

f*******t
发帖数: 7549
26
搞语言的要不太激进(各种FP,为了语法糖不管第一个写代码的人之外所有人的死活)
,要不太保守(C++多少年不变,不加实用功能),想做出好语言不是靠玩些花样就行
的。

【在 q*c 的大作中提到】
: 其实我发现有个通用规律 --
: 喜欢这些玩意的人基本都很自我中心, 左派的比例是特别的大。
: 做人还真是一贯的

N******K
发帖数: 10202
27
Matlab 也可以不用()
如果是算法程序 读的是逻辑思路 b是变量还是函数 根本不重要
另外 不用IDE编程序 这不就是原始人么?

【在 f*******t 的大作中提到】
: 看似很酷,实则SB。
: 我鄙视ruby之类不从全局考虑用的语言。
: 工作中开发代码只占一小块成本, 维护的代价并不比开发低。
: 搞这些语言让写代码的人爽了,但维护无比困难、痛苦,真的有意义吗?
: 像ruby中这种语句:
: a = obj.b
: 在读代码时不能直接看出b是变量还是函数。没有IDE支持,搜索b到底是什么东西还得
: 花不少时间。写的时候少打几个括号,维护时多花N分钟做无用功。

g*********e
发帖数: 14401
28
emacs vi

【在 N******K 的大作中提到】
: Matlab 也可以不用()
: 如果是算法程序 读的是逻辑思路 b是变量还是函数 根本不重要
: 另外 不用IDE编程序 这不就是原始人么?

N******K
发帖数: 10202
29
用了几次 就卸掉了

【在 g*********e 的大作中提到】
: emacs vi
g*********e
发帖数: 14401
30

那你用什么写C++?

【在 N******K 的大作中提到】
: 用了几次 就卸掉了
相关主题
[合集] call-by-ref降低了C++程序可读性刚看完类这一章,有些大小问题,请指教,谢谢
问个C++编译器如何处理函数内的static 变量Linus Torvald有多少钱?
[求教大虾]关于C++编译期变量和运行期变量的区别,总是有疑惑Linus Torvalds因内核注解标点格式发飙 solidot teikaei 21小时54分钟前 Linus Torvalds在Linux内核邮件开发者列表上再次发飙,将部分程序员偏爱的代码注解标点格式称为“脑残”。他强烈反对的注解格式类似:/* This is disgusting drug-induced * crap, and should die */(具体见下图) http://static.cnbetacdn.com/article/2016/0713/00a2039be872
进入Programming版参与讨论
n****1
发帖数: 1136
31
You don't use IDE to view git commits/diffs! Most of the time you want to
understand what is going on by just look at the commit, not the original
code.
That is why Linus Torvalds hate C++

【在 N******K 的大作中提到】
: Matlab 也可以不用()
: 如果是算法程序 读的是逻辑思路 b是变量还是函数 根本不重要
: 另外 不用IDE编程序 这不就是原始人么?

q*c
发帖数: 9453
32
中国古代牛逼啊, 祖宗们说:
极高明者道中庸
对人这种地等生物, 保持中庸平衡那是太难。

【在 f*******t 的大作中提到】
: 搞语言的要不太激进(各种FP,为了语法糖不管第一个写代码的人之外所有人的死活)
: ,要不太保守(C++多少年不变,不加实用功能),想做出好语言不是靠玩些花样就行
: 的。

N******K
发帖数: 10202
33
vs2013 professional 正版

【在 g*********e 的大作中提到】
:
: 那你用什么写C++?

e*******o
发帖数: 4654
34
是想不写就不写的自由。

【在 g*********e 的大作中提到】
: 就是少写两个括号?
c*********e
发帖数: 16335
35
linux的regular expression就是这种思维。貌似unix,linux的思维是这样的,很多的
命令也是这样。
c,c++,java,c#,php好很多。

【在 q*c 的大作中提到】
: 我是完全没法理解为了写的短而让读的人不清楚这种思维。
: 就是为了面子伤里子。

s******u
发帖数: 501
36
没理解你说的前一段和后面说的linus这个二货hate C++有什么逻辑上的联系?

【在 n****1 的大作中提到】
: You don't use IDE to view git commits/diffs! Most of the time you want to
: understand what is going on by just look at the commit, not the original
: code.
: That is why Linus Torvalds hate C++

S**********e
发帖数: 503
37
事关job security呀

【在 q*c 的大作中提到】
: 我是完全没法理解为了写的短而让读的人不清楚这种思维。
: 就是为了面子伤里子。

q*c
发帖数: 9453
38
结果 job 都没了, 遑论 security, lol.
goodbug 说的对, 我们不是知本家, 整个产业做大, 让人人都用, 才是我们这样的
小虾米的王道。

【在 S**********e 的大作中提到】
: 事关job security呀
f*******t
发帖数: 7549
39
最近我在思考为什么公司要给new grad高工资,甚至能超过老员工,内部怨声载道都义
无反顾。后来有点心得,这应该是为了整个行业的潜规则,高起薪容易吸引更多的人才
加入。毕竟一个行业是否兴旺不是一两个人,一两家公司能决定的,需要源源不断的钱
财和人才。
goodbug这个观点很对。固步自封只能导致人才流失,创造出新产业摧毁旧产业。只有
不断给新人补充完善的机会才能发展下去。再说写一堆狗屁不通的代码真的能增加job
security?

【在 q*c 的大作中提到】
: 结果 job 都没了, 遑论 security, lol.
: goodbug 说的对, 我们不是知本家, 整个产业做大, 让人人都用, 才是我们这样的
: 小虾米的王道。

b*******s
发帖数: 5216
40
别想那么多,就是供需决定的

job

【在 f*******t 的大作中提到】
: 最近我在思考为什么公司要给new grad高工资,甚至能超过老员工,内部怨声载道都义
: 无反顾。后来有点心得,这应该是为了整个行业的潜规则,高起薪容易吸引更多的人才
: 加入。毕竟一个行业是否兴旺不是一两个人,一两家公司能决定的,需要源源不断的钱
: 财和人才。
: goodbug这个观点很对。固步自封只能导致人才流失,创造出新产业摧毁旧产业。只有
: 不断给新人补充完善的机会才能发展下去。再说写一堆狗屁不通的代码真的能增加job
: security?

相关主题
Linus Torvalds因内核注解标点格式发飙 solidot teikaei 21小时54分钟前 Linus Torvalds在Linux内核邮件开发者列表上再次发飙,将部分程序员偏爱的代码注解标点格式称为“脑残”。他强烈反对的注解格式类似:/* This is disgusting drug-induced * crap, and should die */(具体见下图) http://static.cnbetacdn.com/article/2016/0713/00a2039be872R似乎根本就没有认真考虑过global variable的改写问题
Linus Torvalds: Java A Horrible Language - YouTube请教c++里函数调用的问题
牛人就是拽:Linus Torvalds一直讨厌这11项技术C++编程原则的问题
进入Programming版参与讨论
f*******t
发帖数: 7549
41
new grad能干的活可不值那么多钱

【在 b*******s 的大作中提到】
: 别想那么多,就是供需决定的
:
: job

g*****g
发帖数: 34805
42
不是new grad工资高,而是老帮菜太懒。不升级,公司也就象征性给长个5%,跳槽没20
%都不好意思
跟人打招呼。然而跳槽也有成本,要刷题准备面试,跳了重新适应环境,两小时的活可
能变成十小时。如果要重做绿卡成本也很高,等等不一而足。
简单的说,除了能力,机遇,勤奋愿意折腾的人也挣得多。所以与其埋怨不公,不如从
自己身上找原因。

job

【在 f*******t 的大作中提到】
: 最近我在思考为什么公司要给new grad高工资,甚至能超过老员工,内部怨声载道都义
: 无反顾。后来有点心得,这应该是为了整个行业的潜规则,高起薪容易吸引更多的人才
: 加入。毕竟一个行业是否兴旺不是一两个人,一两家公司能决定的,需要源源不断的钱
: 财和人才。
: goodbug这个观点很对。固步自封只能导致人才流失,创造出新产业摧毁旧产业。只有
: 不断给新人补充完善的机会才能发展下去。再说写一堆狗屁不通的代码真的能增加job
: security?

b*******s
发帖数: 5216
43
well said

20

【在 g*****g 的大作中提到】
: 不是new grad工资高,而是老帮菜太懒。不升级,公司也就象征性给长个5%,跳槽没20
: %都不好意思
: 跟人打招呼。然而跳槽也有成本,要刷题准备面试,跳了重新适应环境,两小时的活可
: 能变成十小时。如果要重做绿卡成本也很高,等等不一而足。
: 简单的说,除了能力,机遇,勤奋愿意折腾的人也挣得多。所以与其埋怨不公,不如从
: 自己身上找原因。
:
: job

b*******s
发帖数: 5216
44
科学家说的是可以的,因为这函数就是个存取变量的,你可以把它当alias理解
如果没有括号,看起来是更直观一些

【在 q*c 的大作中提到】
: 这个就很明显~ 不对
: a.name() 函数内部生成一个对象,对象的饮用返回前拷贝进临时变量。然后函数内部
: 那个对象饮引用丢失。 这个临时变量在等号左面, 然后被赋值为 abc , 导致他本身
: 的引用丢失, 然后新得到的 abc 也立刻丢失。
: 这样函数内部产生的对象丢失,临时对象丢失,abc 赋值的对象丢失。
: 这样到底要干啥?
: 我猜测是想改变函数内部某个全局变量的状态, 但是这本身就不是好主义。
: 或者是要重新定义函数?

b*******s
发帖数: 5216
45
那可不一定,比如很多老工程师,就会个jee,顶多再写过三五百行python就哭爹喊娘
了,你说他值几个钱

【在 f*******t 的大作中提到】
: new grad能干的活可不值那么多钱
q*c
发帖数: 9453
46
"后来有点心得,这应该是为了整个行业的潜规则,"
你这想法是错误的。至少我觉得不对。
这个现行有专门名称, 叫 salary compression. 这事情发生是有原因的, 是因为个
人投资转移的代价不小。 你换工作成本很大, 位置, 知识, 职务, 朋友, 等等等
等, 都让你不容易轻易的转移。
new grad 就没这些负担, 有全部的选择。所以统计下, 同条件, new grad 就比 现
在的员工选择自由大。
在自由竞争的市场上, 选择多的人工资就高。 就是个简单的选择自由关系。 你的大
棋说, 太高大上了。。。知本家和其他地等生物的人一样, 也只能看眼前利益, 没
人会去考虑别的。
生为人真是不幸。 希望下辈子能和我朋友一样去天界 happy no ending... 哈哈。

job

【在 f*******t 的大作中提到】
: 最近我在思考为什么公司要给new grad高工资,甚至能超过老员工,内部怨声载道都义
: 无反顾。后来有点心得,这应该是为了整个行业的潜规则,高起薪容易吸引更多的人才
: 加入。毕竟一个行业是否兴旺不是一两个人,一两家公司能决定的,需要源源不断的钱
: 财和人才。
: goodbug这个观点很对。固步自封只能导致人才流失,创造出新产业摧毁旧产业。只有
: 不断给新人补充完善的机会才能发展下去。再说写一堆狗屁不通的代码真的能增加job
: security?

q*c
发帖数: 9453
47
科学家。。。乖乖。
我都已经认怂了, 大家还打死狗不休啊, 哈哈。 我是太久没用 reference 这种类型
了。 那玩意返回的就是个字符串指针, 但是又用了 reference 这种语法糖, 所以就
直接赋值。我就看错了。我狠讨厌这些奇技淫巧。
这个函数我就会命名为 getNameReference. 看了就知道是啥, 没猜想的余地。 生活
已经狠麻烦了, 还叫人猜, 活不活了。

【在 b*******s 的大作中提到】
: 科学家说的是可以的,因为这函数就是个存取变量的,你可以把它当alias理解
: 如果没有括号,看起来是更直观一些

g*********e
发帖数: 14401
48

reference不算语法糖吧。java里所有的变量都是reference。
反正看着比指针舒服

【在 q*c 的大作中提到】
: 科学家。。。乖乖。
: 我都已经认怂了, 大家还打死狗不休啊, 哈哈。 我是太久没用 reference 这种类型
: 了。 那玩意返回的就是个字符串指针, 但是又用了 reference 这种语法糖, 所以就
: 直接赋值。我就看错了。我狠讨厌这些奇技淫巧。
: 这个函数我就会命名为 getNameReference. 看了就知道是啥, 没猜想的余地。 生活
: 已经狠麻烦了, 还叫人猜, 活不活了。

q*c
发帖数: 9453
49
不一样吧。 java 得 reference, 比如 string, 你赋值原来得直就丢了。
c++ reference 一赋值原来得直就变了。
不知道 c++ 记忆得对不对。

【在 g*********e 的大作中提到】
:
: reference不算语法糖吧。java里所有的变量都是reference。
: 反正看着比指针舒服

g*********e
发帖数: 14401
50
java丢了是因为gc
c手动管理。

【在 q*c 的大作中提到】
: 不一样吧。 java 得 reference, 比如 string, 你赋值原来得直就丢了。
: c++ reference 一赋值原来得直就变了。
: 不知道 c++ 记忆得对不对。

相关主题
C++编程问题:union inside structC++ pointer to function is buggy
关于placement new问个a=b 的问题
C++的"初始化"小结解释一下吧Re: C语言的前途
进入Programming版参与讨论
G******g
发帖数: 2275
51
这点俺有体会,刚来这个公司时,很多Application是用Object Oriented Perl写的,
还加上N多的Design Pattern,完全没有文档,让人看了以后云里雾里的。一个烂Perl
你搞什么Obejct Oriented啊,另外好歹给点文档啊,Comment也行啊。过了好几个月才
慢慢适应起来,感觉最初的开发者只为了练手,完全不顾维护费用。

【在 f*******t 的大作中提到】
: 看似很酷,实则SB。
: 我鄙视ruby之类不从全局考虑用的语言。
: 工作中开发代码只占一小块成本, 维护的代价并不比开发低。
: 搞这些语言让写代码的人爽了,但维护无比困难、痛苦,真的有意义吗?
: 像ruby中这种语句:
: a = obj.b
: 在读代码时不能直接看出b是变量还是函数。没有IDE支持,搜索b到底是什么东西还得
: 花不少时间。写的时候少打几个括号,维护时多花N分钟做无用功。

1 (共1页)
进入Programming版参与讨论
相关主题
C++如何pass一个变量给一个函数,但是函数声明却没有这个变量?Linus Torvalds: Java A Horrible Language - YouTube
问个C++ Segmentation Fault的问题牛人就是拽:Linus Torvalds一直讨厌这11项技术
[合集] call-by-ref降低了C++程序可读性R似乎根本就没有认真考虑过global variable的改写问题
问个C++编译器如何处理函数内的static 变量请教c++里函数调用的问题
[求教大虾]关于C++编译期变量和运行期变量的区别,总是有疑惑C++编程原则的问题
刚看完类这一章,有些大小问题,请指教,谢谢C++编程问题:union inside struct
Linus Torvald有多少钱?关于placement new
Linus Torvalds因内核注解标点格式发飙 solidot teikaei 21小时54分钟前 Linus Torvalds在Linux内核邮件开发者列表上再次发飙,将部分程序员偏爱的代码注解标点格式称为“脑残”。他强烈反对的注解格式类似:/* This is disgusting drug-induced * crap, and should die */(具体见下图) http://static.cnbetacdn.com/article/2016/0713/00a2039be872C++的"初始化"小结
相关话题的讨论汇总
话题: c++话题: 函数话题: reference话题: 变量话题: 赋值