網頁

C++ 速查手冊 V1.00 - 單元 6 範例




u06.cpp


#include <iostream>
 
int main() {
   int a = 12
   
   std::cout << a << std::endl;

   return 0;
}
 
/* Kaiching Chang 
   u06.cpp
   2014-02 */

u0601_1.cpp


#include <iostream>

int main() {
   int i = -1; 

   try {
      if (i < 0) {
         throw "something wrong...";
      }
   }
   catch (const char* message) {
      std::cout << message
                << std::endl;
   }

   return 0;
}
 
/* Kaiching Chang 
   u0601_1.cpp
   2014-02 */

u0601_2.cpp


#include <iostream>

struct BadValue : 
public std::exception {};

double divide(double a, double b) {
   if (b == 0) {
      throw BadValue();
   }

   return a / b;  
}

int main() {
   try {
      std::cout << divide(20, 5) 
                << std::endl;
      std::cout << divide(20, 4) 
                << std::endl;
      std::cout << divide(20, 3) 
                << std::endl;
      std::cout << divide(20, 2) 
                << std::endl;
      std::cout << divide(20, 1) 
                << std::endl;
      std::cout << divide(20, 0) 
                << std::endl;
   }
   catch (BadValue e) {
      std::cout << "something wrong..." 
                << std::endl;
   }

   return 0;
}
 
/* Kaiching Chang 
   u0601_2.cpp
   2014-02 */

u0602.cpp


#include <iostream>

int main() {
   int i = -1;

   try {
      if (i > 0) {
         throw 0;
      }
      throw 2.0;
   }
   catch (const int e) {
      std::cout << e 
                << std::endl;
   }
   catch (...) {
      std::cout << "something wrong" 
                << std::endl;
   }

   return 0;
}
 
/* Kaiching Chang 
   u0602.cpp
   2014-02 */

the end

沒有留言:

張貼留言

0.留言請選擇註冊帳號, Google 或 OpenID 均可
1.歡迎留言交流,但不歡迎垃圾留言及廣告留言
2.文章相關問題歡迎提出,請減少情緒性留言
3.非文章相關內容,請到 G+ 社群 FB 社團提出
4.問作業之留言會被直接刪除
5.莫忘網路禮節
6.可使用部份HTML標記,如 <b> 、 <i> 、 <a>
7.站長保留刪除留言的權力