[問題] 資料型別

看板C_and_CPP作者 (dada)時間14年前 (2012/01/31 15:24), 編輯推噓5(509)
留言14則, 8人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) dev c++ 程式碼(Code):(請善用置底文網頁, 記得排版) #include<iostream> #include<string> std::string s1 = "hello"; // Line 4 int main(){ std::string s2 ="world"; std::cout<<s1<<" "<<s2<<std::endl; int s1=42; // Line 8 std::cout<<s1<<" "<<s2<<std::endl; system("pause"); return 0; } 疑問: s1 在全域變數 資料型態是字串 在 主程式用int s1=42;擦掉字串 這樣子是合法的嗎? 另外一提,此範例在c++ primer 4/e p55 在p53頁有寫到一個變數可在程式內被宣告多次,但是只能定義一次    而本程式 line 4: 宣告s1和定義 並且初始化 當進入主程式local Line 8 :宣告同樣是s1的變數且也定義了 這樣不就違背之前寫的只能定義一次嗎?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.125.21.48 ※ 編輯: wasidada 來自: 140.125.21.48 (01/31 15:25)

01/31 15:27, , 1F
一個是全域變數 s1 另一個是區域變數 s1
01/31 15:27, 1F

01/31 16:18, , 2F
借提發問 XD 請問有c++ primer 4/e 的解答本嗎 3/e差很多
01/31 16:18, 2F

01/31 16:26, , 3F
網路上版本很多只有前面幾章 orz
01/31 16:26, 3F

01/31 16:31, , 4F
我記得解答本可以買,至少對岸有出書在台灣發行(三民).
01/31 16:31, 4F

01/31 17:44, , 5F
scope不一樣 他們是完全不同的變數
01/31 17:44, 5F

01/31 19:43, , 6F
怎不用using namespace std; ? 打std::不嫌累贅嗎? @@
01/31 19:43, 6F

01/31 22:46, , 7F
引用來源 我通常都不會去改
01/31 22:46, 7F

02/01 00:22, , 8F
打std::好處在於不會把所有std內部用到的東西都
02/01 00:22, 8F

02/01 00:22, , 9F
全部包進來,再有兩個namespace裡面名稱可能有相同時
02/01 00:22, 9F

02/01 00:23, , 10F
可以做一個區隔開來,要用using或是std::就看取捨
02/01 00:23, 10F

02/01 00:23, , 11F
如果小程式練習用,用using會比較方便
02/01 00:23, 11F

02/01 01:00, , 12F
大程式用using也沒什麼不好,不會比較慢也不會變肥
02/01 01:00, 12F

02/01 01:01, , 13F
就算撞名也可以用fully qualified name來指定
02/01 01:01, 13F

02/01 01:02, , 14F
也是啦xdd我也都是用full的方式分開
02/01 01:02, 14F
文章代碼(AID): #1F9vS_w_ (C_and_CPP)