程式編寫中易錯的case

2021-10-01 14:39:41 字數 911 閱讀 9589

1. a嚴格依賴於b,但是b之後又改變了,這時候再用a,就會出現一些意想不到的錯誤。。。比如陣列越界等,所以一點要確保中間b沒有任何變化。

#找  萬  所在的位置

index_of_wan = money.find('萬')

#將money擷取

money = money[money.find('億'):]

#注意這個時候money已經改變了導致index_of_wan已經失效

money[index_of_wan]!='萬'

2. 當迴圈**現可變容器時,在迴圈過程中會改變容器的size,要注意。。

priorityqueue<>pq;

for(int i=0;i3. 當後面的計算依賴於某一項時,要保證該項在中途是否會變化,且該變化是否是應該的。。。

int days=;

// 將該陣列均減去首位+1,即-days[0]+1,左平移,變成以1開始的陣列

for(int i=0;i=0;i--)

days[i]=days[i]-days[0];

//或者--2

t = days[0]

for(int i=0;idays[i]=days[i]-days[0]+1;

//或者--3

for(int i=1;idays[i]=days[i]-days[0]+1;

days[0]=1;

感覺最好的應該是第二種,直接暴露了易錯點,而寫法1則比較隱晦地避免易錯點

intdp=;

public int dp(int x)

//應該是

momo[x]=math.max(memo[x],...)

//作為沙雕,我已經在這個上面犯了好幾次錯誤

java中易錯的地方

1 instanceof 實現了某介面的類的物件也是該介面的例項 某類的物件也是該類超類的例項。2 native 修飾的方法沒有方法體,用乙個分號 代替大括號。3 main不是關鍵字。4 system.exit int value 也就是說,只要是int的,就能夠使jvm退出system.exit ...

OpenCV 中的易錯點

記錄opencv學習中遇到的一些容易搞錯的知識點 1 opencv讀取的彩色是bgr模式的,而我們使用mtplotlib繪製影象時使用的是rgb模式,兩者之間需要轉換通道位置。cv2.cvtcolor 函式可以進行轉換,或者使用numpy進行通道轉換 2 影象混合的時候,我們會使用cv2.addwe...

C 中的易錯點

int t when tsize 上述 中,當t 1時,t str cin是見到空格就結束 getline cin,str 是見到換行符就結束 在scanf或者cin後面使用getline的,一定要在scanf和cin後面使用getchar 吃掉回車,再用getline scanf getchar ...