(toppers-etrobo 47) Re: EV3RT c++ APIのClockクラスの使い方

Fukaya Yusuke vcello.0115.rachmaninov @ gmail.com
2015年 11月 17日 (火) 23:05:43 JST


久保秋様
深谷です。
返答が遅くなり大変申し訳ありません。

技術教育は毎回違うメンバーが参加しており、チームで内容の細部まで共有がしっかり出来ていませんでした…
私たちの確認不足です。お手数おかけしました。

私個人的には、(プログラミングの勉強不足なだけではありますが)makeによってどのようにファイルが
関連付け(?)されているのかが気になりました。
あまりmakeによるビルドの経験がなく、複数のディレクトリにあるファイルがどのような順番で、
どのように処理されていくのか追いきることができませんでした。

参加者側の勉強意欲が重要であることは承知の上でのわがままな意見ですが、
技術教育は、c++の基礎に触れるものと、モデル図の書き方に触れるものの両方があると良いと
感じました。
また、本当に小さい規模のc++プログラムを例にして、それをモデル図で表すと
どうなるか、少し規模を大きくして(機能をつけ加えるなど)それをモデル図で表すとどうなるか、
のような参考資料(参考書籍)があると、プログラムとモデル図との対応がより理解できたのでは
ないかと思います。(ロボコンと全く関係ないプログラムでも構いません。)

お役に立てるかどうか分かりませんが、大勢のETロボコン参加者のうちの1人の意見として
読んで頂けましたら幸いです。


2015/10/27 21:33 "kuboaki (gmail)" <kuboaki @ cityfujisawa.ne.jp>:

> 深谷さん、
>
> 情報ありがとうございます。
>
> 技術教育のモデリング演習では、6章でシーンを切り替えるために
> シンプルなタイマーを作っていました(覚えていらっしゃいますか?)
>
> この演習では、Clockクラスを使うことを企図して作成していまして、
> SimpleTimerクラスを定義した
> etrobo_tr_ex2/unit/SimpleTimer.h
> の冒頭で、
> #include "Clock.h"
> としていました。
>
> ここら辺りは助けにならなかったようでしょうか。
> もし、気づけていないようでしたら、もう少し説明したほうがよいか
> 考えてみたいと思います。
>
> あるいは、クラスを使うときは、まずリファレンスマニュアルをみて、
> 利用するときに必要な宣言を確認する、といったC++言語としての基礎を
> しっかり解説するほうがよいでしょうか。
>
> この場合ですと、たとえば今回のClockクラスであれば、
>
> http://www.toppers.jp/ev3pf/EV3RT_CXX_API_Reference/classev3api_1_1_clock.html
> をみるて、確認するという手順を教えることになると思います。
>
> いかがでしょうか。
> いま少しご意見いただけますと、
> 今後の対応に役立ちますので、助かります。
> よろしくお願い申し上げます。
>
>
> -- kuboaki
>
> On 2015/10/27 18:24, Fukaya Yusuke wrote:
> > 久保秋様
> >
> > お世話になっております。
> > 深谷です。
> >
> > 返信遅くなり申し訳ありません。
> >
> > まずサンプルプログラムですが、
> > ETロボコン2015の参加チーム専用ページの
> > 資料ダウンロード13番から取得できるものを
> > 使用しました。
> >
> > また、他のクラスと同様にClockクラスが
> > 使用できると考えた理由ですが、
> > リファレンスのデータ構造でMotorクラスや
> > Sensorクラスなどと同様にClockクラスも
> > ev3apiの下に書いてあったので、ソースコード
> > の中のどこかで宣言されていると勘違いしたためです。
> >
> > makeでコンパイルする際、どこのディレクトリのどのファイルが読み込まれる(?)のかが、
> > makefileの内容から読み取れず、結果Clock.hがincludeされている箇所を確認できなかったことが真の原因だと思っています。
> >
> > 以上、宜しくお願いします。
> > 2015/10/22 11:18 "kuboaki (gmail)" <kuboaki @ cityfujisawa.ne.jp>:
> >
> >> 深谷さん、
> >>
> >> 久保秋です。
> >> 今後の参考として、2つ教えて下さい。
> >>
> >>> ETロボコンのサンプルプログラムを使用していた為、
> >>> 他のクラスと同様にincludeされているものと思い込んでいました…
> >>
> >> 1)これは、どの教育(や資料)で提供された、どのサンプルを指していますか。
> >> 2)ほかのクラスと同様というのは、どこを見て確認して同様と考えましたか。
> >>
> >> よろしくお願いします。
> >>
> >> -- kuboaki
> >>
> >> On 2015/10/22 8:28, Fukaya Yusuke wrote:
> >>> 稲地様
> >>>
> >>> 深谷です。
> >>> 返信遅くなり申し訳ありません。
> >>>
> >>> 回答ありがとうございます。
> >>> ソースコードを見直したところ、確かにClock.hがincludeされていませんでした。
> >>>
> >>> ETロボコンのサンプルプログラムを使用していた為、他のクラスと同様にincludeされているものと思い込んでいました…
> >>>
> >>> 初歩的な箇所で大変お騒がせいたしました。
> >>>
> >>> 今後ともどうぞ宜しくお願いいたします。
> >>> 2015/10/17 11:39 "Minoru Inachi" <minoru.inachi @ gmail.com>:
> >>>
> >>>> 深谷様
> >>>>
> >>>> ETロボコン EV3WGの稲地と申します。
> >>>>
> >>>> エラーメッセージのとおり、コンパイルするソースに
> >>>> ev3api::Clock のクラス宣言がされていません。
> >>>> たぶん、以下のように Clock クラスを取り込んでいない
> >>>> ものと察しますが、いかがでしょうか。
> >>>>
> >>>> #include "Clock.h"
> >>>>
> >>>> よろしくお願いいたします。
> >>>>
> >>>>
> >>>> 2015年10月15日 19:29 Fukaya Yusuke <vcello.0115.rachmaninov @ gmail.com>:
> >>>>> 担当者様
> >>>>>
> >>>>> 深谷と申します。
> >>>>> 以前はジャイロセンサ関数の仕様について
> >>>>> 回答頂きありがとうございました。
> >>>>>
> >>>>> 今回はClockクラスの使い方について質問があります。
> >>>>> Clockクラスのメンバ関数を使用したく、他のクラスと
> >>>>> 同様に「using ev3api::Clock」と宣言をしたのですが、
> >>>>> コンパイル時に「ev3api::Clock has not been declared」
> >>>>> とエラーメッセージが出てしまいます。
> >>>>>
> >>>>> フォルダ構成も見直し、他のMotorクラスやGyroSensorクラス
> >>>>> と同様に使用できると思うのですが、Clockクラスだけ使用できません。
> >>>>>
> >>>>> C++での基本的な質問かもしれませんが、何か解決のための
> >>>>> 助言を頂けないでしょうか。
> >>>>>
> >>>>> 宜しくお願いいたします。
> >>>>
> >>
> >> --
> >> Shin Kuboaki
> >> fingerprint: E054 E819 05F6 71C7 DB6F  8F8E 5CBC F460 1E21 0BFA
> >>
>
> --
> Shin Kuboaki
> fingerprint: E054 E819 05F6 71C7 DB6F  8F8E 5CBC F460 1E21 0BFA
>
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://www.toppers.jp/pipermail/etrobo/attachments/20151117/facc5dd2/attachment.html>