Closed ytoi closed 3 months ago
C++でモーターのクラスを作って、そのコンストラクターでモーターの初期化を定義した場合、そのクラスをグローバル変数として定義するとグローバルコンストラクターとして初期化を行おうとする。 しかし、このタイミングではRasPike-ARTの初期化が行われていないため、エラーとなる。
現在videv_initで初期化を行なっているが、コンストラクターの優先順位の高いもので初期化するようにする。
グローバルコンストラクターで初期化を行うようにしたが、main()より前に初期化しないといけないので、device_configを使えない。RasPike-ARTブランチではデフォルトをUSB/ARTモードにすることで対応した。
また、ev3api.cでコンストラクターの呼び出しが行われていたため、2重で初期化が行われていたため、この呼び出しをやめるようにした。
C++でモーターのクラスを作って、そのコンストラクターでモーターの初期化を定義した場合、そのクラスをグローバル変数として定義するとグローバルコンストラクターとして初期化を行おうとする。 しかし、このタイミングではRasPike-ARTの初期化が行われていないため、エラーとなる。
現在videv_initで初期化を行なっているが、コンストラクターの優先順位の高いもので初期化するようにする。