模板参数=void*的编译器错误 - 页 15 1...891011121314151617181920 新评论 Ilya Malev 2018.12.20 19:26 #141 这是给你的 "正确 "定义,因为你喜欢挑剔一切)))。 #define POKE(t, i, b, n, v) ( i & ((( ~ MASK( t, n )) << t( b )) | (( v & MASK( t, n )) << t( b )))) Dmitry Fedoseev 2018.12.20 19:31 #142 Igor Makanu:它们不是多余的!它们有助于读懂表达方式的逻辑。 括号的数量是否影响速度?- 除非它影响打字速度,但没有人看....每个用户一天在网上输入的括号数量就是一个最好的例子 ))))这是对未来无错误和快速更正的保证。 Igor Makanu 2018.12.20 19:37 #143 Dmitry Fedoseev:这是对未来无错误和快速修订的保证。至少有人能以简短和正式的方式写作,我总是把事情复杂化,写很多信......哎呀,我们又来了)))) A100 2018.12.20 19:49 #144 Ilya Malev:这里有一个 "正确 "的定义给你,因为你喜欢挑剔一切)))) 另一个不必要的括号的例子:追逐不必要的 括号的数量--缺少必要的 括号 (( ~ MASK(( t),( n))) << t( b )) 所以托架不是这种事情的保证,相反--放松了 Ilya Malev 2018.12.20 20:02 #145 你不需要在t和n周围加上括号--它们不可能是复合的。好吧,既然我们有这样一个节日的谈话,让我们考虑一下这个))) #define B64(M,N) (( N ) < 32 \ ? (( N ) < 16 \ ? (( N ) < 8 \ ? (( N ) < 4 \ ? (( N ) < 2 \ ? \ (( N ) < 1 ? M##0 : M##1 ) \ : (( N ) < 3 ? M##2 : M##3 )) : (( N ) < 6 ? \ (( N ) < 5 ? M##4 : M##5 ) \ : (( N ) < 7 ? M##6 : M##7 ))) : (( N ) < 12 ? (( N ) < 10 ? \ (( N ) < 9 ? M##8 : M##9 ) \ : (( N ) < 11 ? M##10 : M##11 )) : (( N ) < 14 ? \ (( N ) < 13 ? M##12 : M##13 ) \ : (( N ) < 15 ? M##14 : M##15 )))) : (( N ) < 24 ? (( N ) < 20 ? (( N ) < 18 ? \ (( N ) < 17 ? M##16 : M##17 ) \ : (( N ) < 19 ? M##18 : M##19 )) : (( N ) < 22 ? \ (( N ) < 21 ? M##20 : M##21 ) \ : (( N ) < 23 ? M##22 : M##23 ))) : (( N ) < 28 ? (( N ) < 26 ? \ (( N ) < 25 ? M##24 : M##25 ) \ : (( N ) < 27 ? M##26 : M##27 )) : (( N ) < 30 ? \ (( N ) < 29 ? M##28 : M##29 ) \ : (( N ) < 31 ? M##30 : M##31 ))))) : (( N ) < 48 ? (( N ) < 40 ? (( N ) < 36 ? (( N ) < 34 ? \ (( N ) < 33 ? M##32 : M##33 ) \ : (( N ) < 35 ? M##34 : M##35 )) : (( N ) < 38 ? \ (( N ) < 37 ? M##36 : M##37 ) \ : (( N ) < 39 ? M##38 : M##39 ))) : (( N ) < 44 ? (( N ) < 42 ? \ (( N ) < 41 ? M##40 : M##41 ) \ : (( N ) < 43 ? M##42 : M##43 )) : (( N ) < 46 ? \ (( N ) < 45 ? M##44 : M##45 ) \ : (( N ) < 47 ? M##46 : M##47 )))) : (( N ) < 56 ? (( N ) < 52 ? (( N ) < 50 ? \ (( N ) < 49 ? M##48 : M##49 ) \ : (( N ) < 51 ? M##50 : M##51 )) : (( N ) < 54 ? \ (( N ) < 53 ? M##52 : M##53 ) \ : (( N ) < 55 ? M##54 : M##55 ))) : (( N ) < 60 ? (( N ) < 58 ? \ (( N ) < 57 ? M##56 : M##57 ) \ : (( N ) < 59 ? M##58 : M##59 )) : (( N ) < 62 ? \ (( N ) < 61 ? M##60 : M##61 ) \ : (( N ) < 63 ? M##62 : M##63 )))))) 之后我意识到( long( 1 ) << N ) 是2倍的速度,但这不是重点) Ilya Malev 2018.12.20 20:15 #146 A100:另一个不必要的括号的例子:在追求不必要的 括号的数量时,遗漏了必要的 括号。你在那里放了太多的括号作为 "不必要的"。如果一个人设定的目标是删除尽可能多的括号,这样编译器就不会开始说脏话,也许你是对的,但是当一个人想写出第一眼就能让自己和别人理解的代码时,这个目标就不值得了(尤其是考虑到编辑器中的双括号高亮)。 A100 2018.12.20 20:20 #147 Ilya Malev:(我不确定这一点))void f() { ulong x = B64( ,3); //Error }一个编译时的错误。预期的是什么? Ilya Malev 2018.12.20 20:24 #148 A100:这是一个编译错误。预期的是什么?这只是为了它的美丽。这个定义还附加了128个定义,才能发挥作用,但我还是要让分支的读者们省心)))。 Alexey Navoykov 2018.12.20 20:32 #149 Igor Makanu:它们不是多余的!它们有助于阅读这个表达方式背后的逻辑。 好吧,如果他们帮助你,那么上帝与你同在。 只是你的帖子是关于 "简洁是才华的姐妹"。 所以我在问这句话如何能与大量的多余的括号结合起来。 我不需要他们来理解这个逻辑。这是否意味着我更有天赋?) A100 2018.12.20 20:34 #150 Alexey Navoykov: 我不需要他们来理解逻辑。这是否使我更有才华?)Adepts的另一个目标:是的,我们以压倒性优势击败了他们)。 1...891011121314151617181920 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这是给你的 "正确 "定义,因为你喜欢挑剔一切)))。
#define POKE(t, i, b, n, v) ( i & ((( ~ MASK( t, n )) << t( b )) | (( v & MASK( t, n )) << t( b ))))
它们不是多余的!它们有助于读懂表达方式的逻辑。
括号的数量是否影响速度?- 除非它影响打字速度,但没有人看....每个用户一天在网上输入的括号数量就是一个最好的例子 ))))
这是对未来无错误和快速更正的保证。
这是对未来无错误和快速修订的保证。
至少有人能以简短和正式的方式写作,我总是把事情复杂化,写很多信......哎呀,我们又来了))))
这里有一个 "正确 "的定义给你,因为你喜欢挑剔一切))))
另一个不必要的括号的例子:追逐不必要的 括号的数量--缺少必要的 括号
所以托架不是这种事情的保证,相反--放松了你不需要在t和n周围加上括号--它们不可能是复合的。好吧,既然我们有这样一个节日的谈话,让我们考虑一下这个)))
之后我意识到( long( 1 ) << N ) 是2倍的速度,但这不是重点)
另一个不必要的括号的例子:在追求不必要的 括号的数量时,遗漏了必要的 括号。
你在那里放了太多的括号作为 "不必要的"。如果一个人设定的目标是删除尽可能多的括号,这样编译器就不会开始说脏话,也许你是对的,但是当一个人想写出第一眼就能让自己和别人理解的代码时,这个目标就不值得了(尤其是考虑到编辑器中的双括号高亮)。
(我不确定这一点))
一个编译时的错误。预期的是什么?
这是一个编译错误。预期的是什么?
这只是为了它的美丽。这个定义还附加了128个定义,才能发挥作用,但我还是要让分支的读者们省心)))。
它们不是多余的!它们有助于阅读这个表达方式背后的逻辑。
我不需要他们来理解逻辑。这是否使我更有才华?)
Adepts的另一个目标:是的,我们以压倒性优势击败了他们)。