組み込みC言語プログラマのためのmruby入門(中編) ―― mrubyをお手軽に体験する!

邑中 雅樹

tag: 組み込み

技術解説 2012年11月 7日

●例外処理

 C言語では,エラーの通知は,関数からの戻り値を用いるのが一般的です.Rubyでは,エラー処理の方法として例外処理機構を用意しています.

 基本的な例外処理の構造は,begin 文とrescue文が担います.begin式中でエラーが発生すると,処理を中断してrescue式の中を実行します.

> begin
* 1+"a"    #この行でエラー
* rescue => e
* puts "Detects an error."
* end
Detects an error.
=> nil

 Rubyの例外処理は,JavaやC++のtry - catch構造とよく似ています.ただし,retry文など,エラーからの回復のために便利な機能が付加されています.C言語には相当する概念がないので本稿では詳細は割愛しますが,安全なアプリケーションを記述するためには,例外処理を理解することは大切です.ひと通り使えるようになったあとで,Ruby の専門書に当たってみてください.

 

●メソッドの宣言

 Rubyはオブジェクト指向言語なので,ほかの言語の慣例に沿って,C言語の関数に対応するものをメソッドと呼びます.引き数の自乗を計算するメソッドpow2(x) を宣言してみましょう.

> def pow2(x)
* return x * x
* end
=> nil

 メソッドの宣言はdefで始まり,メソッド名と引き数となる変数名を記述します.C言語とは異なり,波かっこ( { } )ではくくらず,endで閉じます.


●メソッドの呼び出し

 メソッドの呼び出しは,C言語と同様です.

> pow2(4)
=> 16

 メソッド内のreturnは省略できます.省略した場合には,最後に評価した式の値を返します.

> def pow2(x)
* x * x
* end
=> nil

> pow2(4)
=> 16

 同名のメソッドを定義した場合には,最後に定義したメソッドが有効になります.

 

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日