前提・実現したいこと
該当のソースコードにあるプログラムのように、Red_Fruits.hで定義したRed redfruits()の値を、Red_Fruits.ccで定義した時、この値をYellow_Fruits.hやYellow_Fruits.ccのように他のヘッダファイルもしくはソースファイルで参照したいです。Red_Fruits.h内のRed redfruits()の定義の仕方はおかしいと感じると思いますが、このように定義できると仮定したうえで質問させていただきたいです。
発生している問題・エラーメッセージ
(*)行目のApple Red::redfruits()の後ろに";"が必要
該当のソースコード
C++
1//------------------------------------------------ 2//Red_Fruits.h 3class RedFruits { 4 Red redfruits() const; 5} 6 7//------------------------------------------------ 8//Red_Fruits.cc 9#include <Red_Fruits.h> 10Red Redfruits::redfruits() { 11 return "任意の値"; 12} 13 14//------------------------------------------------ 15//Yellow_Fruits.h 16#include <Red_Fruits.h> 17Red Redfruits::redfruits() yellow; // (*) 18 19//------------------------------------------------ 20//Yellow_Fruits.cc 21#include <Yellow_Fruits.h> 22#include <Red_Fruits.h>
試したこと
やり方として考えたのは、Yellow_Fruits.hでRed_Fruits.hをインクルードして()行のようにyellowに置き換えてあげれば、あとはYellow_Fruits.ccでYellow_Fruits.h等をインクルードすることでyellow(=Redfruits::redfruits())を参照できると思ったのですが、()の行でRedfruits::redfruits()の後ろに";"が必要だというエラーが表示されてしまっています。
なんとかしてYellow_Fruits.h(cc)でredfruitsの値を参照する方法があれば教えていただけないでしょうか。
補足情報(FW/ツールのバージョンなど)
Red_Ftuits.ccにあるように、Redfruits::redfruits()は数値の返り値を持っているように設定されています。
何か不足情報等あればご指示していただきたいと思います。