作者sunneo (艾斯寇德)
站內Programming
標題Re: [問題] C++ try-catch語法
時間Mon Sep 24 22:59:44 2007
: #include <iostream.h>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
這東西已經過時了,他應該是<iostream>
而且cin cout cerr 類別都在namespace std裡面
using std::cin;
using std::cout;
using std::endl;
: void main()
^^^^^^^^^
void main是不符合標準的東西
他必須是int main
而且底下應該要回傳某個數字,正常的時候EXIT_SUCCESS
: { int n;
ok,假設你所謂排版是這一回事的話
: int a[5]={1,2,3,4,5};
: cout<<"n="<<endl;
: cin>>n;
: try{ if(n<0)
n<0丟出了錯誤,好
那麼當他比5大的時候怎麼辦?
比5大的時候答案不是正確的,為什麼不把這情形放進去
: throw "invalid number n";
: int s=0;
: for(int i=0;i<n;i++)
: s=s+a[i];
: cout<<"sum="<< s<<endl;
: }
^^^^
這個你想對齊誰?
: catch(char *e)
^^^^^^^^^^^^^^
"invalid number n"這個是一個 const char*
: {
: cout<<e<<endl;
^^^^^^^^^^^^^^^ 這邊不是應該要向上縮?
: };
^^^^ 這邊不用分號
: };
^^^這邊不用分號
排版沒做好先承認吧,口氣這麼糟糕,
這樣的問題該放在C_and_CPP的為什麼不去那邊問?
來這邊還那麼兇是故意要討戰的是吧?
再說,排版不好的程式碼,沒有人想看
特別是你連自己所打的排版都算不出來哪裡排不好了
而且你的排版既不是K&R、不是Java的Style、也不是PublicStyle
我依照你所謂你的排版來看,你根本都在自打嘴巴
這是目前我看過的排版
----------SLX style ------------
void foo()
{
arguments...
inner_scope
{
inner_arguments...
}
}
--------- K&R Style -------------------------
void foo(){
arguments...
inner_scope{
inner_arguments...
}
}
---------- Java Style ------------------------
void foo(){
arguments...
inner_scope(){
inner_arguments...
}
}
---------Public Style ---------------------
void foo()
{
arguments...
inner_scope()
{
inner_arguments...
}
}
--------Microsoft Function --------------------
void foo(
type arg1,
type arg2,
)
{
arguments...
inner_scope()
{
inner_arguments...
}
}
--------- STL Function Style -----------------
declarator
void
foo()
{
arguments...
inner_scope()
{
inner_arguments...
}
}
----------你的 Style ------------------------
void foo()
{ arguments...
};
void bar()
{ arguments...
};
void bull()
{
arguments...
};
---------沒排版 Style-------------------------------
void foo(){
argument...}
void bar()
{
argument...}
void bull()
{
arguments..
}
void shit(){
arguments...
}
別人的排版一個就可以歸納出來,可以看出他的樣式
你的卻有三個版本
選一個排版遵守一下不是很好?
對自己好,讓看程式碼的人也好
如果你進公司,或者跟教授專案,或者跟人合作
就一定要遵守他們的排版規則
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.228.138
※ 編輯: sunneo 來自: 220.132.228.138 (09/24 23:20)
推 freesamael:我才剛想說s大怎麼這麼有容忍力... 220.135.82.153 09/24 23:30
→ freesamael:果然還是爆發了阿XD 220.135.82.153 09/24 23:31
推 sunneo:XDDDDDD220.132.228.138 09/24 23:31
→ sunneo:很氣呀~~~~~220.132.228.138 09/24 23:33
推 StubbornLin:我得了一種沒排或亂排程式碼125.231.227.138 09/24 23:35
→ StubbornLin:就不想看的病125.231.227.138 09/24 23:36
推 PcGrek:推排版教學文!(原來我是public style...XD) 218.163.144.54 09/25 01:39
→ suhue:對不起喔!我想我只是疑問的口氣 問哪裡糟? 219.81.160.184 09/25 10:37
→ suhue:並非怪罪的口氣,可能是單文字容易被誤會 219.81.160.184 09/25 10:38
→ suhue:我想大家一看也知道我並非高手所以才來這 219.81.160.184 09/25 10:39
→ suhue:因為我之前是用BCB dos版學,可能有點過時 219.81.160.184 09/25 10:39
→ suhue:所以上面那些如果不那樣寫,會出現error 219.81.160.184 09/25 10:40
→ suhue:如果有得罪的地方還請見諒阿! 219.81.160.184 09/25 10:41
推 sai199:爆走的sunneo XDDDDD 61.224.237.47 09/25 14:05
推 LiloHuang:看完我之後我想笑了.... 61.230.170.47 09/25 16:02
推 sunneo:="= ... berber220.132.228.138 09/25 16:13
推 UNARYvvv:suhue 那我建議你可以換一個新版的來練習140.115.222.102 09/25 23:35
→ UNARYvvv:畢竟我用 BCB6 也是正常可編過的140.115.222.102 09/25 23:36
→ UNARYvvv:剛開始學習的時候工具好一點也會比較順的140.115.222.102 09/25 23:36
→ UNARYvvv:不然如果碰到編譯器太舊才出現的麻煩140.115.222.102 09/25 23:37
→ UNARYvvv:會浪費不少時間..140.115.222.102 09/25 23:38
推 revivalworld:XDDDDDDD 60.244.216.125 09/26 18:41