第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Go fmt 為數(shù)學(xué)表達(dá)式生成格式不一致的結(jié)果

Go fmt 為數(shù)學(xué)表達(dá)式生成格式不一致的結(jié)果

Go
慕斯709654 2023-08-07 14:36:52
我的理解是 go fmt 應(yīng)該生成可讀且格式一致的代碼。但我認(rèn)為情況并非如此。我輸入了注釋的代碼,然后 go fmt 返回了未注釋的代碼。為什么它倒塌了0.5*(y3-y0),卻沒(méi)有倒塌0.5 * (y2 - y0)?怎樣才算一致呢?而且,在我看來(lái),幾乎所有空間都塌陷的返回線(xiàn)是一場(chǎng)可讀性災(zāi)難。不一致是一個(gè)錯(cuò)誤嗎?有沒(méi)有辦法讓 go fmt 單獨(dú)保留某些線(xiàn)路(例如返回線(xiàn)路)?func cubicInterpolate(x, y0, y1, y2, y3 float64) float64 {    // 4-point, 3rd-order Hermite (x-form)    // c0 := y1    // c1 := 0.5 * (y2 - y0)    // c2 := y0 - 2.5 * y1 + 2. * y2 - 0.5 * y3    // c3 := 1.5 * (y1 - y2) + 0.5 * (y3 - y0)    //    // return ((c3 * x + c2) * x + c1) * x + c0    c0 := y1    c1 := 0.5 * (y2 - y0)    c2 := y0 - 2.5*y1 + 2.*y2 - 0.5*y3    c3 := 1.5*(y1-y2) + 0.5*(y3-y0)    return ((c3*x+c2)*x+c1)*x + c0}
查看完整描述

1 回答

?
臨摹微笑

TA貢獻(xiàn)1982條經(jīng)驗(yàn) 獲得超2個(gè)贊

目的是強(qiáng)制執(zhí)行布局規(guī)則:

gofmt 是一個(gè)漂亮的打印機(jī),其目的是強(qiáng)制執(zhí)行布局規(guī)則;它取代了通常允許解釋的“該做和不該做”的概要。

下面是來(lái)自go/printer/nodes.go 的格式化摘錄,詳細(xì)介紹了格式化規(guī)則:

格式化二進(jìn)制表達(dá)式:確定截止值,然后格式化。我們將深度 == 1 稱(chēng)為普通模式,將深度 > 1 稱(chēng)為緊湊模式。(Russ Cox 的算法建議。)

優(yōu)先順序是: ? ? ?5 ? ? ? ? ? ? * ?/ ?% ?<< ?>> ?& ?&^ ? ? ?4 ? ? ? ? ? ? + ?- ?| ?^ ? ? ?3 ? ? ? ? ? ? == ?!= ?< ?<= ?> ?>= ? ? ?2 ? ? ? ? ? ? && ? ? ?1 ? ? ? ? ? ? ||

唯一的決定是第 4 層和第 5 層周?chē)欠裼锌崭?。?6 層(一元)永遠(yuǎn)沒(méi)有空格,而第 3 層及以下層始終有空格。

要選擇截止值,請(qǐng)查看整個(gè)表達(dá)式,但不包括主要表達(dá)式(函數(shù)調(diào)用、帶括號(hào)的表達(dá)式),并應(yīng)用以下規(guī)則:

  1. 如果存在帶有右側(cè)一元操作數(shù)的二元運(yùn)算符,如果沒(méi)有空格就會(huì)發(fā)生沖突,則截止必須是(按順序):

???/*?6???
???&&?6???
???&^?6???
???++?5???
???--?5

(比較運(yùn)算符周?chē)偸怯锌崭?。?/p>

  1. 如果混合使用 5 級(jí)和 4 級(jí)運(yùn)算符,則正常模式下的截止值為 5(使用空格來(lái)區(qū)分優(yōu)先級(jí)),而緊湊模式下的截止值為 4(從不使用空格)。

  2. 如果沒(méi)有 4 級(jí)運(yùn)算符或沒(méi)有 5 級(jí)運(yùn)算符,則正常模式下的截止值為 6(始終使用空格),緊湊模式下的截止值為 4(從不使用空格)。


查看完整回答
反對(duì) 回復(fù) 2023-08-07
  • 1 回答
  • 0 關(guān)注
  • 123 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)