ホーム » 2006 (ページ 14)

年別アーカイブ: 2006

2025年6月
1234567
891011121314
15161718192021
22232425262728
2930  

検索・リンク

仮想関数

先週の継承の話しの続きとして、 派生クラスの基底クラスへの型変換のあるプログラムを説明し、 『格下げ』されると、元の派生クラスの特徴が失われる問題点を説明する。 その問題を解決するための仮想関数の説明を行う。

南極教室

南極教室

味真野小学校 にて、第40次南極観測隊だった前川先生と学生さんにより、『南極教室』を開催しました。 前川先生の所で卒研をしていた電子情報OBの尾崎さん(金沢大学)も、 第47次南極観測隊として現在参加しており、 尾崎さんと衛星電話経由でお話をしました。 また、前川先生秘蔵の南極の氷なども持参し、小学生の皆さんは興味深げだったようです。

数値と文字列の変換

文字列の扱い,N進数,文字コード,int型などの総合理解を目標とした、 atoi,itoa 相当の関数作成の課題の演習時間。 itoa の動作説明をしてから演習時間とした。

「t-saitoh様【採用のご報告です】」だとさ

エロサイトから、【採用のご報告です】とのタイトルでメールが届く。 就職担当泣かせなタイトル使うんじゃねぇ…

逆引きできないサイトのメールサーバを信用するか?

逆引きできないサイトのメールサーバを信用するか?

SPAM の記事関連でページをたどっていたら、 リンク記事を発見。その中の例に 私の書いた文書 が高専名付きで記載されている。 この記事では、 『送信メールサーバの名前を逆引きしてホスト名の実名と不一致のメールを reject するのは、害がある』 という趣旨で書かれているが、私の書いた文書は、 『逆引きできないサイトは reject する』という内容であり、 『逆引きが一致しない』のチェックはしていない。 つまり、BOT に侵された PC でも逆引きできる DNS 登録があれば、 うけとっちゃうザルなんだけどなぁ… 逆引きってのは、元と一致という意味で使う人の方が多いのか?

舞鶴高専交歓試合バドミントン競

今日は舞鶴高専にてバドミントンの交歓試合。

2006-05-27-00.JPG

一太郎添付

一太郎添付

ふっ、久々に事務の方から一太郎の添付ファイルが送られてきた。 久々にもらったな。一太郎ビューアを早速インストール。

継承(導出)

継承の説明を行う。電子情報以外の人もいるので、 便利さがどこまで伝わったか心配。

class Person {
private:
char  name[ 10 ] ;
int   age ;
float weight , height ;
public:
Person( char s[] , int a , float w , float h ) {
strcpy( name , s ) ;
age = a ;
weight = w , height = h ;
}
void print() {
printf( "%s %d %f %f\n" ,
name , age , weight , height ) ;
}
} ;
class Child : public Person {
public:
Person* ptr ;
public:
Child( char s[] , int a , float w , float h , Person* p ) {
: Person( s , a , w , h ) {
ptr = p ;
}
Person& parent() {
return *ptr ;
}
} ;
void main() {
Person tsaitoh( "t-saitoh" , 41 , 79 , 172 ) ;
Child  mitsuki( "mitsuki" , 6 , 24 , 122 , &tsaitoh ) ;
tsaitoh.print() ;
mitsuki.parent().print() ;
// 継承を使うと
mitsuki.print() ;
}

malloc+free

可変長配列として、malloc + free を説明する。 課題として、名前と成績のデータ保存をテーマにする。 名前部分、成績部分、全データの配列を、可変長に改良させる。

C++ の new[] 相当のネタばかりで、 単一データ new の様な使い方を見せていないなぁ…
# テストのネタで使ってみよう。

文字と文字列の扱い

先週の文字の扱いを補うために、文字コードを使った1行コードの練習問題で 文字コードの意味の理解を狙う。 文字列の説明として、末尾コード'\0'を含め説明を行う。 最後に、文字列から数値を取り出すコードを紹介。 来週は、演習室にて課題にとりくむ予定。

int atoi( char str[] ) {
int s = 0 , i ;
for( i = 0 ; s[i] != '
int atoi( char str[] ) {
int s = 0 , i ;
for( i = 0 ; s[i] != '\0' ; i++ ) {
if ( '0' <= s[i] && s[i] <= '9' )
s = s*10 + (s[i] - '0') ;
}
return s ;
}
' ; i++ ) { if ( '0' <= s[i] && s[i] <= '9' ) s = s*10 + (s[i] - '0') ; } return s ; }

システム

最新の投稿(電子情報)

アーカイブ

カテゴリー