在对象上使用流操作符
use of flow operators on objects
我在使用运算符在对象上注入输入/输出流时遇到问题(运算符<<)
我实际上是在编写代码以在我的对象上制作“cout <<”运行 并显示它们的值;这是以下代码,特别是一个函数和一个 class 方法,位于同一个 class 文件中:
-功能码:
ostream &operator<<( ostream &flux, Duree const& duree)
{
duree.afficher(flux) ; // <- Changement ici
return flux;
}
-方法代码:
void Duree::afficher(ostream &flux) const
{
flux << m_heures << "h" << m_minutes << "m" << m_secondes << "s";
}
但问题是,当我编译时,我被告知“ostream 不是类型名称”、“ostream 未在此代码中声明”。
我不明白,但我搜索了互联网,显然这是正确的做法。我正在使用 Code :: Blocks 的 20.3 版。
要使其正常工作,函数必须在主文件中,而不是在 class 文件中。
我在使用运算符在对象上注入输入/输出流时遇到问题(运算符<<) 我实际上是在编写代码以在我的对象上制作“cout <<”运行 并显示它们的值;这是以下代码,特别是一个函数和一个 class 方法,位于同一个 class 文件中:
-功能码:
ostream &operator<<( ostream &flux, Duree const& duree)
{
duree.afficher(flux) ; // <- Changement ici
return flux;
}
-方法代码:
void Duree::afficher(ostream &flux) const
{
flux << m_heures << "h" << m_minutes << "m" << m_secondes << "s";
}
但问题是,当我编译时,我被告知“ostream 不是类型名称”、“ostream 未在此代码中声明”。 我不明白,但我搜索了互联网,显然这是正确的做法。我正在使用 Code :: Blocks 的 20.3 版。
要使其正常工作,函数必须在主文件中,而不是在 class 文件中。