11 EKİM 2009, Pazar
C eşdeğer java.olabilirdi?
Bir akış, cout
yani, özel bir sınıfın bir nesnesi için yazılmış bir kontrol etmek istiyorum. Bu C mümkün mü ? Java benzer bir amaç için toString()
yöntemini geçersiz kılar.
CEVAP
11 EKİM 2009, Pazar
C ostream
Özel Sınıf operator<<
aşırı yüklenmeye neden olabilir:
class A {
public:
int i;
};
std::ostream& operator<<(std::ostream &strm, const A &a) {
return strm << "A(" << a.i << ")";
}
Sınıf akışlarında örnekleri çıkış yolu::
A x = ...;
std::cout << x << std::endl;
operator<<
sınıf iç A
yazdırmak istiyor Eğer gerçekten özel ve korunan üyeleri için erişim gerekir diye de arkadaş bir fonksiyonu olarak bildirebilirsiniz:
class A {
private:
friend std::ostream& operator<<(std::ostream&, const A&);
int j;
};
std::ostream& operator<<(std::ostream &strm, const A &a) {
return strm << "A(" << a.j << ")";
}
Bunu Paylaş:
C Çifti eşdeğer<L,R> Java nedir?...
Olabilirdi vs Dize birleştirme StringB...
() Olabilirdi PHP eşdeğer...
C eşdeğer'#; ler DateTime.Java şim...
Java eşdeğer #c bölgesi#...