将变量作为类对象返回

时间:2013-08-26 13:30:09

标签: c++

我使用字符数组创建了一个字符串类。

我实际上需要放置该数组而不是类对象。这是一个简单的例子。

我想将 A 打印为整数,而不是 B 作为无法实现的类对象。

#include <iostream>

class T 
{
   int A ;

   public : T ( )
   {
       A = 10 ;
   }
} ;

void main ( )
{
    T B ;
    std :: cout << B ;
}
  1. 有可能吗?

  2. 好的,但是怎么样?

2 个答案:

答案 0 :(得分:4)

您需要输出流运算符:

std::ostream& operator <<(std::ostream& o, const T& t)
{
  return o << t.A;
}

请注意,由于A是私有的,因此必须是friend T

答案 1 :(得分:0)

一种方法是向类定义的公共部分添加一个函数,该函数返回A:

的值
class T{
...
public:
...
int retA(){
    return A;
}
};

int main{
T B;
cout << B.retA();
return 0;   //This is what chris said in his comment!
}

希望这有帮助!