运算符重载允许为自定义类型定义运算符的行为,使类对象可以像内置类型一样使用运算符。合理的运算符重载可以提高代码的可读性和表达力。
算术运算符重载是最常见的运算符重载类型。
#include
class Complex {
double real_, imag_;
public:
Complex(double r = 0, double i = 0) : real_(r), imag_(i) {}
Complex operator+(const Complex& other) const {
return Complex(real_ + other.real_, imag_ + other.imag_);
}
Complex operator-(const Complex& other) const {
return Complex(real_ - other.real_, imag_ - other.imag_);
}
Complex operator*(const Complex& other) const {
return Complex(
real_ * other.real_ - imag_ * other.imag_,
real_ * other.imag_ + imag_ * other.real_
);
}
Complex& operator+=(const Complex& other) {
real_ += other.real_;
imag_ += other.imag_;
return *this;
}
double real() const { return real_; }
double imag() const { return imag_; }
void print() const {
std::cout << real_ << " + " << imag_ << "i\n";
}
};
void arithmetic_operators() {
Complex c1(3, 4);
Complex c2(1, 2);
Complex sum = c1 + c2;
Complex diff = c1 - c2;
Complex prod = c1 * c2;
std::cout << "Sum: "; sum.print();
std::cout << "Diff: "; diff.print();
std::cout << "Product: "; prod.print();
}
比较运算符重载用于定义对象的比较逻辑。
class Fraction {
int numerator_, denominator_;
int gcd(int a, int b) const {
return b == 0 ? a : gcd(b, a % b);
}
void simplify() {
int g = gcd(numerator_, denominator_);
numerator_ /= g;
denominator_ /= g;
if (denominator_ < 0) {
numerator_ = -numerator_;
denominator_ = -denominator_;
}
}
public:
Fraction(int n, int d = 1) : numerator_(n), denominator_(d) {
simplify();
}
bool operator==(const Fraction& other) const {
return numerator_ * other.denominator_ == other.numerator_ * denominator_;
}
bool operator!=(const Fraction& other) const {
return !(*this == other);
}
bool operator<(const Fraction& other) const {
return numerator_ * other.denominator_ < other.numerator_ * denominator_;
}
bool operator>(const Fraction& other) const {
return other < *this;
}
bool operator<=(const Fraction& other) const {
return !(other < *this);
}
bool operator>=(const Fraction& other) const {
return !(*this < other);
}
void print() const {
std::cout << numerator_ << "/" << denominator_;
}
};
void comparison_operators() {
Fraction f1(1, 2);
Fraction f2(2, 4);
Fraction f3(3, 4);
std::cout << "f1 == f2: " << (f1 == f2) << "\n";
std::cout << "f1 < f3: " << (f1 < f3) << "\n";
std::cout << "f3 > f1: " << (f3 > f1) << "\n";
}
下标运算符重载允许使用[]访问对象元素。
template
class Array {
T* data_;
size_t size_;
public:
explicit Array(size_t size) : data_(new T[size]), size_(size) {}
~Array() {
delete[] data_;
}
T& operator[](size_t index) {
return data_[index];
}
const T& operator[](size_t index) const {
return data_[index];
}
size_t size() const { return size_; }
};
void subscript_operator() {
Array arr(5);
for (size_t i = 0; i < arr.size(); ++i) {
arr[i] = i * 10;
}
for (size_t i = 0; i < arr.size(); ++i) {
std::cout << arr[i] << " ";
}
std::cout << "\n";
}
函数调用运算符重载创建函数对象。
class Accumulator {
int sum_;
public:
Accumulator() : sum_(0) {}
int operator()(int value) {
sum_ += value;
return sum_;
}
int get_sum() const { return sum_; }
};
void function_call_operator() {
Accumulator acc;
std::cout << "After 10: " << acc(10) << "\n";
std::cout << "After 20: " << acc(20) << "\n";
std::cout << "After 30: " << acc(30) << "\n";
}
流插入和提取运算符重载用于输入输出。
class Point {
int x_, y_;
public:
Point(int x = 0, int y = 0) : x_(x), y_(y) {}
friend std::ostream& operator<<(std::ostream& os, const Point& p) {
os << "(" << p.x_ << ", " << p.y_ << ")";
return os;
}
friend std::istream& operator>>(std::istream& is, Point& p) {
is >> p.x_ >> p.y_;
return is;
}
};
void stream_operators() {
Point p1(10, 20);
std::cout << "Point: " << p1 << "\n";
}
递增递减运算符有前缀和后缀两种形式。
class Counter {
int value_;
public:
explicit Counter(int v = 0) : value_(v) {}
Counter& operator++() {
++value_;
return *this;
}
Counter operator++(int) {
Counter temp = *this;
++value_;
return temp;
}
Counter& operator--() {
--value_;
return *this;
}
Counter operator--(int) {
Counter temp = *this;
--value_;
return temp;
}
int value() const { return value_; }
};
void increment_decrement() {
Counter c(10);
std::cout << "Initial: " << c.value() << "\n";
std::cout << "++c: " << (++c).value() << "\n";
std::cout << "c++: " << (c++).value() << "\n";
std::cout << "After c++: " << c.value() << "\n";
}
指针和解引用运算符重载用于智能指针。
template
class SmartPtr {
T* ptr_;
public:
explicit SmartPtr(T* p = nullptr) : ptr_(p) {}
~SmartPtr() {
delete ptr_;
}
T& operator*() const {
return *ptr_;
}
T* operator->() const {
return ptr_;
}
explicit operator bool() const {
return ptr_ != nullptr;
}
SmartPtr(const SmartPtr&) = delete;
SmartPtr& operator=(const SmartPtr&) = delete;
};
void pointer_operators() {
SmartPtr ptr(new Complex(3, 4));
if (ptr) {
std::cout << "Real: " << ptr->real() << "\n";
std::cout << "Imag: " << (*ptr).imag() << "\n";
}
}
类型转换运算符允许隐式或显式类型转换。
class Integer {
int value_;
public:
explicit Integer(int v) : value_(v) {}
operator int() const {
return value_;
}
explicit operator bool() const {
return value_ != 0;
}
};
void conversion_operators() {
Integer i(42);
int x = i;
std::cout << "Converted to int: " << x << "\n";
if (i) {
std::cout << "Integer is non-zero\n";
}
}
运算符重载应该遵循直觉和一致性原则,避免令人困惑的重载。
class String {
char* data_;
size_t length_;
public:
String(const char* str = "") {
length_ = strlen(str);
data_ = new char[length_ + 1];
strcpy(data_, str);
}
~String() {
delete[] data_;
}
String(const String& other) {
length_ = other.length_;
data_ = new char[length_ + 1];
strcpy(data_, other.data_);
}
String& operator=(const String& other) {
if (this != &other) {
delete[] data_;
length_ = other.length_;
data_ = new char[length_ + 1];
strcpy(data_, other.data_);
}
return *this;
}
String operator+(const String& other) const {
String result;
result.length_ = length_ + other.length_;
result.data_ = new char[result.length_ + 1];
strcpy(result.data_, data_);
strcat(result.data_, other.data_);
return result;
}
bool operator==(const String& other) const {
return strcmp(data_, other.data_) == 0;
}
const char* c_str() const { return data_; }
};
void string_operators() {
String s1("Hello");
String s2(" World");
String s3 = s1 + s2;
std::cout << "Concatenated: " << s3.c_str() << "\n";
std::cout << "Equal: " << (s1 == s2) << "\n";
}
运算符重载是C++中实现自然语法的重要工具,但应该谨慎使用,确保重载的运算符符合直觉和预期。
tfu.ndbfp.cn/35157.Doc
tfu.ndbfp.cn/59335.Doc
tfu.ndbfp.cn/75119.Doc
tfu.ndbfp.cn/97739.Doc
tfu.ndbfp.cn/39153.Doc
tfu.ndbfp.cn/59175.Doc
tfu.ndbfp.cn/97599.Doc
tfu.ndbfp.cn/95937.Doc
tfu.ndbfp.cn/33993.Doc
tfu.ndbfp.cn/39193.Doc
tfy.ndbfp.cn/31579.Doc
tfy.ndbfp.cn/55179.Doc
tfy.ndbfp.cn/97517.Doc
tfy.ndbfp.cn/15997.Doc
tfy.ndbfp.cn/71393.Doc
tfy.ndbfp.cn/57331.Doc
tfy.ndbfp.cn/97915.Doc
tfy.ndbfp.cn/91791.Doc
tfy.ndbfp.cn/93197.Doc
tfy.ndbfp.cn/13933.Doc
tft.ndbfp.cn/99931.Doc
tft.ndbfp.cn/75717.Doc
tft.ndbfp.cn/79355.Doc
tft.ndbfp.cn/75713.Doc
tft.ndbfp.cn/19195.Doc
tft.ndbfp.cn/93317.Doc
tft.ndbfp.cn/19379.Doc
tft.ndbfp.cn/51131.Doc
tft.ndbfp.cn/99993.Doc
tft.ndbfp.cn/75539.Doc
tfr.ndbfp.cn/33537.Doc
tfr.ndbfp.cn/31371.Doc
tfr.ndbfp.cn/73919.Doc
tfr.ndbfp.cn/93793.Doc
tfr.ndbfp.cn/79933.Doc
tfr.ndbfp.cn/17553.Doc
tfr.ndbfp.cn/99595.Doc
tfr.ndbfp.cn/15353.Doc
tfr.ndbfp.cn/51775.Doc
tfr.ndbfp.cn/37131.Doc
tfe.ndbfp.cn/77511.Doc
tfe.ndbfp.cn/75375.Doc
tfe.ndbfp.cn/11157.Doc
tfe.ndbfp.cn/15791.Doc
tfe.ndbfp.cn/99917.Doc
tfe.ndbfp.cn/75517.Doc
tfe.ndbfp.cn/91399.Doc
tfe.ndbfp.cn/55577.Doc
tfe.ndbfp.cn/99751.Doc
tfe.ndbfp.cn/59575.Doc
tfw.ndbfp.cn/37597.Doc
tfw.ndbfp.cn/77913.Doc
tfw.ndbfp.cn/19799.Doc
tfw.ndbfp.cn/31171.Doc
tfw.ndbfp.cn/97173.Doc
tfw.ndbfp.cn/37553.Doc
tfw.ndbfp.cn/79599.Doc
tfw.ndbfp.cn/33997.Doc
tfw.ndbfp.cn/53557.Doc
tfw.ndbfp.cn/71577.Doc
tfq.ndbfp.cn/73557.Doc
tfq.ndbfp.cn/77153.Doc
tfq.ndbfp.cn/95555.Doc
tfq.ndbfp.cn/99119.Doc
tfq.ndbfp.cn/75977.Doc
tfq.ndbfp.cn/39319.Doc
tfq.ndbfp.cn/13757.Doc
tfq.ndbfp.cn/95795.Doc
tfq.ndbfp.cn/91535.Doc
tfq.ndbfp.cn/13391.Doc
tdm.ndbfp.cn/19599.Doc
tdm.ndbfp.cn/11151.Doc
tdm.ndbfp.cn/53717.Doc
tdm.ndbfp.cn/19395.Doc
tdm.ndbfp.cn/33735.Doc
tdm.ndbfp.cn/73715.Doc
tdm.ndbfp.cn/15313.Doc
tdm.ndbfp.cn/95577.Doc
tdm.ndbfp.cn/73711.Doc
tdm.ndbfp.cn/79175.Doc
tdn.ndbfp.cn/35351.Doc
tdn.ndbfp.cn/79799.Doc
tdn.ndbfp.cn/91131.Doc
tdn.ndbfp.cn/97317.Doc
tdn.ndbfp.cn/75197.Doc
tdn.ndbfp.cn/77533.Doc
tdn.ndbfp.cn/79139.Doc
tdn.ndbfp.cn/99357.Doc
tdn.ndbfp.cn/11975.Doc
tdn.ndbfp.cn/77157.Doc
tdb.ndbfp.cn/79719.Doc
tdb.ndbfp.cn/75791.Doc
tdb.ndbfp.cn/59995.Doc
tdb.ndbfp.cn/59317.Doc
tdb.ndbfp.cn/55955.Doc
tdb.ndbfp.cn/57757.Doc
tdb.ndbfp.cn/11715.Doc
tdb.ndbfp.cn/97337.Doc
tdb.ndbfp.cn/31175.Doc
tdb.ndbfp.cn/33557.Doc
tdv.ndbfp.cn/93119.Doc
tdv.ndbfp.cn/71715.Doc
tdv.ndbfp.cn/91557.Doc
tdv.ndbfp.cn/73159.Doc
tdv.ndbfp.cn/99151.Doc
tdv.ndbfp.cn/59777.Doc
tdv.ndbfp.cn/73551.Doc
tdv.ndbfp.cn/94587.Doc
tdv.ndbfp.cn/59793.Doc
tdv.ndbfp.cn/91359.Doc
tdc.ndbfp.cn/17177.Doc
tdc.ndbfp.cn/11593.Doc
tdc.ndbfp.cn/99483.Doc
tdc.ndbfp.cn/73953.Doc
tdc.ndbfp.cn/99115.Doc
tdc.ndbfp.cn/53739.Doc
tdc.ndbfp.cn/08732.Doc
tdc.ndbfp.cn/95313.Doc
tdc.ndbfp.cn/93995.Doc
tdc.ndbfp.cn/59331.Doc
tdx.ndbfp.cn/19141.Doc
tdx.ndbfp.cn/80447.Doc
tdx.ndbfp.cn/19971.Doc
tdx.ndbfp.cn/15573.Doc
tdx.ndbfp.cn/77777.Doc
tdx.ndbfp.cn/11137.Doc
tdx.ndbfp.cn/57598.Doc
tdx.ndbfp.cn/11713.Doc
tdx.ndbfp.cn/57717.Doc
tdx.ndbfp.cn/62406.Doc
tdz.ndbfp.cn/60200.Doc
tdz.ndbfp.cn/20444.Doc
tdz.ndbfp.cn/23569.Doc
tdz.ndbfp.cn/44414.Doc
tdz.ndbfp.cn/31939.Doc
tdz.ndbfp.cn/24664.Doc
tdz.ndbfp.cn/86260.Doc
tdz.ndbfp.cn/28442.Doc
tdz.ndbfp.cn/86868.Doc
tdz.ndbfp.cn/06244.Doc
tdl.ndbfp.cn/08004.Doc
tdl.ndbfp.cn/08602.Doc
tdl.ndbfp.cn/02480.Doc
tdl.ndbfp.cn/62282.Doc
tdl.ndbfp.cn/55993.Doc
tdl.ndbfp.cn/80648.Doc
tdl.ndbfp.cn/71399.Doc
tdl.ndbfp.cn/95115.Doc
tdl.ndbfp.cn/24624.Doc
tdl.ndbfp.cn/60042.Doc
tdk.ndbfp.cn/60866.Doc
tdk.ndbfp.cn/20426.Doc
tdk.ndbfp.cn/82644.Doc
tdk.ndbfp.cn/02028.Doc
tdk.ndbfp.cn/48008.Doc
tdk.ndbfp.cn/66688.Doc
tdk.ndbfp.cn/37991.Doc
tdk.ndbfp.cn/82886.Doc
tdk.ndbfp.cn/66666.Doc
tdk.ndbfp.cn/60642.Doc
tdj.ndbfp.cn/62804.Doc
tdj.ndbfp.cn/62624.Doc
tdj.ndbfp.cn/28404.Doc
tdj.ndbfp.cn/60626.Doc
tdj.ndbfp.cn/22848.Doc
tdj.ndbfp.cn/66404.Doc
tdj.ndbfp.cn/08466.Doc
tdj.ndbfp.cn/68220.Doc
tdj.ndbfp.cn/64408.Doc
tdj.ndbfp.cn/84420.Doc
tdh.ndbfp.cn/68866.Doc
tdh.ndbfp.cn/08664.Doc
tdh.ndbfp.cn/02484.Doc
tdh.ndbfp.cn/13317.Doc
tdh.ndbfp.cn/82606.Doc
tdh.ndbfp.cn/82064.Doc
tdh.ndbfp.cn/80280.Doc
tdh.ndbfp.cn/88288.Doc
tdh.ndbfp.cn/82488.Doc
tdh.ndbfp.cn/06000.Doc
tdg.ndbfp.cn/48484.Doc
tdg.ndbfp.cn/22204.Doc
tdg.ndbfp.cn/88646.Doc
tdg.ndbfp.cn/60466.Doc
tdg.ndbfp.cn/82682.Doc
tdg.ndbfp.cn/44866.Doc
tdg.ndbfp.cn/64040.Doc
tdg.ndbfp.cn/84264.Doc
tdg.ndbfp.cn/82224.Doc
tdg.ndbfp.cn/00886.Doc
tdf.ndbfp.cn/06448.Doc
tdf.ndbfp.cn/64208.Doc
tdf.ndbfp.cn/46224.Doc
tdf.ndbfp.cn/88480.Doc
tdf.ndbfp.cn/80482.Doc
tdf.ndbfp.cn/20420.Doc
tdf.ndbfp.cn/22006.Doc
tdf.ndbfp.cn/62442.Doc
tdf.ndbfp.cn/02882.Doc
tdf.ndbfp.cn/88444.Doc
tdd.ndbfp.cn/64220.Doc
tdd.ndbfp.cn/64824.Doc
tdd.ndbfp.cn/08204.Doc
tdd.ndbfp.cn/80422.Doc
tdd.ndbfp.cn/24826.Doc
tdd.ndbfp.cn/55995.Doc
tdd.ndbfp.cn/44084.Doc
tdd.ndbfp.cn/08206.Doc
tdd.ndbfp.cn/04882.Doc
tdd.ndbfp.cn/06604.Doc
tds.ndbfp.cn/22848.Doc
tds.ndbfp.cn/28000.Doc
tds.ndbfp.cn/84808.Doc
tds.ndbfp.cn/40444.Doc
tds.ndbfp.cn/02422.Doc
tds.ndbfp.cn/26806.Doc
tds.ndbfp.cn/62402.Doc
tds.ndbfp.cn/77717.Doc
tds.ndbfp.cn/04808.Doc
tds.ndbfp.cn/60268.Doc
tda.ndbfp.cn/42622.Doc
tda.ndbfp.cn/42688.Doc
tda.ndbfp.cn/04408.Doc
tda.ndbfp.cn/88226.Doc
tda.ndbfp.cn/26808.Doc
tda.ndbfp.cn/06620.Doc
tda.ndbfp.cn/80886.Doc
tda.ndbfp.cn/46640.Doc
tda.ndbfp.cn/79399.Doc
tda.ndbfp.cn/02060.Doc
tdp.ndbfp.cn/04084.Doc
tdp.ndbfp.cn/15753.Doc
tdp.ndbfp.cn/42206.Doc
tdp.ndbfp.cn/24264.Doc
tdp.ndbfp.cn/28822.Doc
tdp.ndbfp.cn/60828.Doc
tdp.ndbfp.cn/48464.Doc
tdp.ndbfp.cn/82020.Doc
tdp.ndbfp.cn/20240.Doc
tdp.ndbfp.cn/82448.Doc
tdo.ndbfp.cn/00262.Doc
tdo.ndbfp.cn/22488.Doc
tdo.ndbfp.cn/44404.Doc
tdo.ndbfp.cn/06806.Doc
tdo.ndbfp.cn/99715.Doc
tdo.ndbfp.cn/60204.Doc
tdo.ndbfp.cn/08406.Doc
tdo.ndbfp.cn/60288.Doc
tdo.ndbfp.cn/48622.Doc
tdo.ndbfp.cn/00484.Doc
tdi.ndbfp.cn/20640.Doc
tdi.ndbfp.cn/40222.Doc
tdi.ndbfp.cn/19557.Doc
tdi.ndbfp.cn/42206.Doc
tdi.ndbfp.cn/02862.Doc
tdi.ndbfp.cn/04848.Doc
tdi.ndbfp.cn/11173.Doc
tdi.ndbfp.cn/51519.Doc
tdi.ndbfp.cn/75393.Doc
tdi.ndbfp.cn/04028.Doc
tdu.ndbfp.cn/62602.Doc
tdu.ndbfp.cn/82622.Doc
tdu.ndbfp.cn/79373.Doc
tdu.ndbfp.cn/04806.Doc
tdu.ndbfp.cn/40480.Doc
tdu.ndbfp.cn/48068.Doc
tdu.ndbfp.cn/02228.Doc
tdu.ndbfp.cn/22080.Doc
tdu.ndbfp.cn/93533.Doc
tdu.ndbfp.cn/35571.Doc
tdy.ndbfp.cn/68208.Doc
tdy.ndbfp.cn/22044.Doc
tdy.ndbfp.cn/00080.Doc
tdy.ndbfp.cn/42644.Doc
tdy.ndbfp.cn/86606.Doc
tdy.ndbfp.cn/80404.Doc
tdy.ndbfp.cn/79539.Doc
tdy.ndbfp.cn/60620.Doc
tdy.ndbfp.cn/88408.Doc
tdy.ndbfp.cn/80006.Doc
tdt.ndbfp.cn/55971.Doc
tdt.ndbfp.cn/11195.Doc
tdt.ndbfp.cn/00464.Doc
tdt.ndbfp.cn/28626.Doc
tdt.ndbfp.cn/66040.Doc
tdt.ndbfp.cn/02808.Doc
tdt.ndbfp.cn/53517.Doc
tdt.ndbfp.cn/31199.Doc
tdt.ndbfp.cn/44404.Doc
tdt.ndbfp.cn/33177.Doc
tdr.ndbfp.cn/04440.Doc
tdr.ndbfp.cn/40240.Doc
tdr.ndbfp.cn/20402.Doc
tdr.ndbfp.cn/60046.Doc
tdr.ndbfp.cn/57957.Doc
tdr.ndbfp.cn/13177.Doc
tdr.ndbfp.cn/39319.Doc
tdr.ndbfp.cn/66844.Doc
tdr.ndbfp.cn/46866.Doc
tdr.ndbfp.cn/42820.Doc
tde.ndbfp.cn/84880.Doc
tde.ndbfp.cn/02862.Doc
tde.ndbfp.cn/08666.Doc
tde.ndbfp.cn/75393.Doc
tde.ndbfp.cn/02862.Doc
tde.ndbfp.cn/20462.Doc
tde.ndbfp.cn/91757.Doc
tde.ndbfp.cn/75197.Doc
tde.ndbfp.cn/62440.Doc
tde.ndbfp.cn/73319.Doc
tdw.ndbfp.cn/88646.Doc
tdw.ndbfp.cn/64846.Doc
tdw.ndbfp.cn/66284.Doc
tdw.ndbfp.cn/22422.Doc
tdw.ndbfp.cn/26002.Doc
tdw.ndbfp.cn/37379.Doc
tdw.ndbfp.cn/17139.Doc
tdw.ndbfp.cn/84686.Doc
tdw.ndbfp.cn/66246.Doc
tdw.ndbfp.cn/40488.Doc
tdq.ndbfp.cn/42444.Doc
tdq.ndbfp.cn/19717.Doc
tdq.ndbfp.cn/44008.Doc
tdq.ndbfp.cn/26688.Doc
tdq.ndbfp.cn/46244.Doc
tdq.ndbfp.cn/46828.Doc
tdq.ndbfp.cn/66028.Doc
tdq.ndbfp.cn/59773.Doc
tdq.ndbfp.cn/53915.Doc
tdq.ndbfp.cn/06428.Doc
tsm.ndbfp.cn/80806.Doc
tsm.ndbfp.cn/26446.Doc
tsm.ndbfp.cn/84888.Doc
tsm.ndbfp.cn/84444.Doc
tsm.ndbfp.cn/75719.Doc
tsm.ndbfp.cn/93313.Doc
tsm.ndbfp.cn/80400.Doc
tsm.ndbfp.cn/04684.Doc
tsm.ndbfp.cn/57119.Doc
tsm.ndbfp.cn/59335.Doc
tsn.ndbfp.cn/20282.Doc
tsn.ndbfp.cn/93773.Doc
tsn.ndbfp.cn/00060.Doc
tsn.ndbfp.cn/44286.Doc
tsn.ndbfp.cn/75591.Doc
tsn.ndbfp.cn/57933.Doc
tsn.ndbfp.cn/57351.Doc
tsn.ndbfp.cn/79173.Doc
tsn.ndbfp.cn/64608.Doc
tsn.ndbfp.cn/82044.Doc
tsb.ndbfp.cn/91915.Doc
tsb.ndbfp.cn/79553.Doc
tsb.ndbfp.cn/62882.Doc
tsb.ndbfp.cn/93559.Doc
tsb.ndbfp.cn/77593.Doc
tsb.ndbfp.cn/86006.Doc
tsb.ndbfp.cn/48660.Doc
tsb.ndbfp.cn/20422.Doc
tsb.ndbfp.cn/37779.Doc
tsb.ndbfp.cn/44442.Doc
tsv.ndbfp.cn/93559.Doc
tsv.ndbfp.cn/46008.Doc
tsv.ndbfp.cn/66620.Doc
tsv.ndbfp.cn/24466.Doc
tsv.ndbfp.cn/15331.Doc
tsv.ndbfp.cn/68022.Doc
tsv.ndbfp.cn/19377.Doc
tsv.ndbfp.cn/55735.Doc
tsv.ndbfp.cn/79551.Doc
tsv.ndbfp.cn/57799.Doc
tsc.ndbfp.cn/64820.Doc
tsc.ndbfp.cn/88068.Doc
tsc.ndbfp.cn/48284.Doc
tsc.ndbfp.cn/46666.Doc
tsc.ndbfp.cn/95133.Doc
tsc.ndbfp.cn/31793.Doc
tsc.ndbfp.cn/37951.Doc
tsc.ndbfp.cn/95191.Doc
tsc.ndbfp.cn/60066.Doc
tsc.ndbfp.cn/60420.Doc
tsx.ndbfp.cn/51319.Doc
tsx.ndbfp.cn/33793.Doc
tsx.ndbfp.cn/19775.Doc
tsx.ndbfp.cn/82042.Doc
tsx.ndbfp.cn/46882.Doc
tsx.ndbfp.cn/64260.Doc
tsx.ndbfp.cn/68228.Doc
tsx.ndbfp.cn/99199.Doc
tsx.ndbfp.cn/08684.Doc
tsx.ndbfp.cn/84244.Doc
tsz.ndbfp.cn/00444.Doc
tsz.ndbfp.cn/80044.Doc
tsz.ndbfp.cn/66066.Doc
tsz.ndbfp.cn/86628.Doc
tsz.ndbfp.cn/02622.Doc
tsz.ndbfp.cn/24460.Doc
tsz.ndbfp.cn/22488.Doc
tsz.ndbfp.cn/00042.Doc
tsz.ndbfp.cn/22446.Doc
tsz.ndbfp.cn/40066.Doc
tsl.ndbfp.cn/68220.Doc
tsl.ndbfp.cn/40460.Doc
tsl.ndbfp.cn/00402.Doc
tsl.ndbfp.cn/22800.Doc
tsl.ndbfp.cn/19151.Doc
tsl.ndbfp.cn/88606.Doc
tsl.ndbfp.cn/00888.Doc
tsl.ndbfp.cn/55517.Doc
tsl.ndbfp.cn/22480.Doc
tsl.ndbfp.cn/08600.Doc
tsk.ndbfp.cn/08242.Doc
tsk.ndbfp.cn/06260.Doc
tsk.ndbfp.cn/86688.Doc
tsk.ndbfp.cn/40022.Doc
tsk.ndbfp.cn/02060.Doc
tsk.ndbfp.cn/86262.Doc
tsk.ndbfp.cn/60860.Doc
tsk.ndbfp.cn/80228.Doc
tsk.ndbfp.cn/00264.Doc
tsk.ndbfp.cn/28600.Doc
tsj.ndbfp.cn/73577.Doc
tsj.ndbfp.cn/62024.Doc
tsj.ndbfp.cn/26004.Doc
tsj.ndbfp.cn/44668.Doc
tsj.ndbfp.cn/06226.Doc
tsj.ndbfp.cn/26422.Doc
tsj.ndbfp.cn/39591.Doc
tsj.ndbfp.cn/44024.Doc
tsj.ndbfp.cn/42426.Doc
tsj.ndbfp.cn/66428.Doc
tsh.ndbfp.cn/08884.Doc
tsh.ndbfp.cn/02882.Doc
tsh.ndbfp.cn/44882.Doc
tsh.ndbfp.cn/84080.Doc
tsh.ndbfp.cn/06822.Doc
tsh.ndbfp.cn/82606.Doc
tsh.ndbfp.cn/88028.Doc
tsh.ndbfp.cn/20086.Doc
tsh.ndbfp.cn/28824.Doc
tsh.ndbfp.cn/35593.Doc
tsg.ndbfp.cn/26620.Doc
tsg.ndbfp.cn/06860.Doc
tsg.ndbfp.cn/84682.Doc
tsg.ndbfp.cn/80684.Doc
tsg.ndbfp.cn/84468.Doc
tsg.ndbfp.cn/66208.Doc
tsg.ndbfp.cn/22604.Doc
tsg.ndbfp.cn/19775.Doc
tsg.ndbfp.cn/86802.Doc
tsg.ndbfp.cn/28806.Doc
tsf.ndbfp.cn/86642.Doc
tsf.ndbfp.cn/71575.Doc
tsf.ndbfp.cn/20460.Doc
tsf.ndbfp.cn/22020.Doc
tsf.ndbfp.cn/48280.Doc
tsf.ndbfp.cn/02660.Doc
tsf.ndbfp.cn/24682.Doc
tsf.ndbfp.cn/46060.Doc
tsf.ndbfp.cn/48204.Doc
tsf.ndbfp.cn/86886.Doc
tsd.ndbfp.cn/04822.Doc
tsd.ndbfp.cn/28426.Doc
tsd.ndbfp.cn/48404.Doc
tsd.ndbfp.cn/33775.Doc
tsd.ndbfp.cn/37571.Doc
tsd.ndbfp.cn/26046.Doc
tsd.ndbfp.cn/04068.Doc
tsd.ndbfp.cn/86860.Doc
tsd.ndbfp.cn/26200.Doc
tsd.ndbfp.cn/44440.Doc
tss.ndbfp.cn/35357.Doc
tss.ndbfp.cn/62042.Doc
tss.ndbfp.cn/24688.Doc
tss.ndbfp.cn/24888.Doc
tss.ndbfp.cn/42600.Doc
tss.ndbfp.cn/20286.Doc
tss.ndbfp.cn/04244.Doc
tss.ndbfp.cn/46640.Doc
tss.ndbfp.cn/26064.Doc
tss.ndbfp.cn/48040.Doc
tsa.ndbfp.cn/46022.Doc
tsa.ndbfp.cn/42668.Doc
tsa.ndbfp.cn/48440.Doc
tsa.ndbfp.cn/84402.Doc
tsa.ndbfp.cn/66000.Doc
tsa.ndbfp.cn/46028.Doc
tsa.ndbfp.cn/00866.Doc
tsa.ndbfp.cn/84664.Doc
tsa.ndbfp.cn/26806.Doc
tsa.ndbfp.cn/20064.Doc
tsp.ndbfp.cn/62442.Doc
tsp.ndbfp.cn/48868.Doc
tsp.ndbfp.cn/91775.Doc
tsp.ndbfp.cn/19195.Doc
tsp.ndbfp.cn/15137.Doc
tsp.ndbfp.cn/57579.Doc
tsp.ndbfp.cn/02800.Doc
tsp.ndbfp.cn/68626.Doc
tsp.ndbfp.cn/80226.Doc
tsp.ndbfp.cn/20860.Doc
tso.ndbfp.cn/86666.Doc
tso.ndbfp.cn/73319.Doc
tso.ndbfp.cn/99599.Doc
tso.ndbfp.cn/13197.Doc
tso.ndbfp.cn/37755.Doc
tso.ndbfp.cn/73555.Doc
tso.ndbfp.cn/37131.Doc
tso.ndbfp.cn/00044.Doc
tso.ndbfp.cn/71555.Doc
tso.ndbfp.cn/39997.Doc
tsi.ndbfp.cn/13935.Doc
tsi.ndbfp.cn/95579.Doc
tsi.ndbfp.cn/19391.Doc
tsi.ndbfp.cn/73339.Doc
tsi.ndbfp.cn/93373.Doc
tsi.ndbfp.cn/95795.Doc
tsi.ndbfp.cn/91755.Doc
tsi.ndbfp.cn/79977.Doc
tsi.ndbfp.cn/51739.Doc
tsi.ndbfp.cn/73973.Doc
tsu.ndbfp.cn/17997.Doc
tsu.ndbfp.cn/37171.Doc
tsu.ndbfp.cn/93757.Doc
tsu.ndbfp.cn/75177.Doc
tsu.ndbfp.cn/93317.Doc
tsu.ndbfp.cn/71373.Doc
tsu.ndbfp.cn/53379.Doc
tsu.ndbfp.cn/37993.Doc
tsu.ndbfp.cn/86040.Doc
tsu.ndbfp.cn/17553.Doc
tsy.ndbfp.cn/77353.Doc
tsy.ndbfp.cn/53551.Doc
tsy.ndbfp.cn/28642.Doc
tsy.ndbfp.cn/51971.Doc
tsy.ndbfp.cn/99551.Doc
tsy.ndbfp.cn/17733.Doc
tsy.ndbfp.cn/79519.Doc
tsy.ndbfp.cn/71191.Doc
tsy.ndbfp.cn/88688.Doc
tsy.ndbfp.cn/97159.Doc
tst.ndbfp.cn/15179.Doc
tst.ndbfp.cn/33173.Doc
tst.ndbfp.cn/91379.Doc
tst.ndbfp.cn/39739.Doc
tst.ndbfp.cn/19735.Doc
tst.ndbfp.cn/35931.Doc
tst.ndbfp.cn/39193.Doc
tst.ndbfp.cn/37957.Doc
tst.ndbfp.cn/15971.Doc
tst.ndbfp.cn/99591.Doc
tsr.ndbfp.cn/17535.Doc
tsr.ndbfp.cn/55397.Doc
tsr.ndbfp.cn/71371.Doc
tsr.ndbfp.cn/77955.Doc
tsr.ndbfp.cn/79197.Doc
tsr.ndbfp.cn/33379.Doc
tsr.ndbfp.cn/59999.Doc
tsr.ndbfp.cn/51737.Doc
tsr.ndbfp.cn/13153.Doc
tsr.ndbfp.cn/35199.Doc
tse.ndbfp.cn/71917.Doc
tse.ndbfp.cn/35913.Doc
tse.ndbfp.cn/62000.Doc
tse.ndbfp.cn/95135.Doc
tse.ndbfp.cn/97955.Doc
tse.ndbfp.cn/00888.Doc
tse.ndbfp.cn/91993.Doc
tse.ndbfp.cn/59139.Doc
tse.ndbfp.cn/75377.Doc
tse.ndbfp.cn/35357.Doc
tsw.ndbfp.cn/59559.Doc
tsw.ndbfp.cn/79357.Doc
tsw.ndbfp.cn/75511.Doc
tsw.ndbfp.cn/75199.Doc
tsw.ndbfp.cn/77719.Doc
tsw.ndbfp.cn/11571.Doc
tsw.ndbfp.cn/99793.Doc
tsw.ndbfp.cn/59599.Doc
tsw.ndbfp.cn/73159.Doc
tsw.ndbfp.cn/59379.Doc
tsq.ndbfp.cn/93577.Doc
tsq.ndbfp.cn/13737.Doc
tsq.ndbfp.cn/95319.Doc
tsq.ndbfp.cn/51319.Doc
tsq.ndbfp.cn/53553.Doc
tsq.ndbfp.cn/13397.Doc
tsq.ndbfp.cn/71979.Doc
tsq.ndbfp.cn/31515.Doc
tsq.ndbfp.cn/51917.Doc
tsq.ndbfp.cn/95975.Doc
tam.ndbfp.cn/13577.Doc
tam.ndbfp.cn/99739.Doc
tam.ndbfp.cn/11317.Doc
tam.ndbfp.cn/75715.Doc
tam.ndbfp.cn/51313.Doc
tam.ndbfp.cn/57993.Doc
tam.ndbfp.cn/77317.Doc
tam.ndbfp.cn/91137.Doc
tam.ndbfp.cn/31753.Doc
tam.ndbfp.cn/99373.Doc
tan.ndbfp.cn/35171.Doc
tan.ndbfp.cn/37155.Doc
tan.ndbfp.cn/39351.Doc
tan.ndbfp.cn/93733.Doc
tan.ndbfp.cn/93371.Doc
tan.ndbfp.cn/19517.Doc
tan.ndbfp.cn/71393.Doc
tan.ndbfp.cn/97355.Doc
tan.ndbfp.cn/99515.Doc
tan.ndbfp.cn/17113.Doc
tab.ndbfp.cn/93333.Doc
tab.ndbfp.cn/33993.Doc
tab.ndbfp.cn/59577.Doc
tab.ndbfp.cn/39775.Doc
tab.ndbfp.cn/59353.Doc
tab.ndbfp.cn/31937.Doc
tab.ndbfp.cn/37193.Doc
tab.ndbfp.cn/79551.Doc
tab.ndbfp.cn/13119.Doc
tab.ndbfp.cn/93933.Doc
tav.ndbfp.cn/93515.Doc
tav.ndbfp.cn/53539.Doc
tav.ndbfp.cn/37573.Doc
tav.ndbfp.cn/35911.Doc
tav.ndbfp.cn/19519.Doc
tav.ndbfp.cn/99515.Doc
tav.ndbfp.cn/91553.Doc
tav.ndbfp.cn/15959.Doc
tav.ndbfp.cn/11577.Doc
tav.ndbfp.cn/91371.Doc
tac.ndbfp.cn/37999.Doc
tac.ndbfp.cn/57535.Doc
tac.ndbfp.cn/75331.Doc
tac.ndbfp.cn/13937.Doc
tac.ndbfp.cn/73917.Doc
tac.ndbfp.cn/75379.Doc
tac.ndbfp.cn/35973.Doc
tac.ndbfp.cn/33751.Doc
tac.ndbfp.cn/35139.Doc
tac.ndbfp.cn/71393.Doc
tax.ndbfp.cn/71757.Doc
tax.ndbfp.cn/55317.Doc
tax.ndbfp.cn/39513.Doc
tax.ndbfp.cn/91753.Doc
tax.ndbfp.cn/59115.Doc
tax.ndbfp.cn/15997.Doc
tax.ndbfp.cn/51197.Doc
tax.ndbfp.cn/57131.Doc
tax.ndbfp.cn/77575.Doc
tax.ndbfp.cn/93913.Doc
taz.ndbfp.cn/97313.Doc
taz.ndbfp.cn/53537.Doc
taz.ndbfp.cn/37179.Doc
taz.ndbfp.cn/51571.Doc
taz.ndbfp.cn/11371.Doc
taz.ndbfp.cn/19137.Doc
taz.ndbfp.cn/31759.Doc
taz.ndbfp.cn/73151.Doc
taz.ndbfp.cn/19395.Doc
taz.ndbfp.cn/97195.Doc
tal.ndbfp.cn/93355.Doc
tal.ndbfp.cn/53379.Doc
tal.ndbfp.cn/37917.Doc
tal.ndbfp.cn/79311.Doc
tal.ndbfp.cn/13573.Doc
tal.ndbfp.cn/19713.Doc
tal.ndbfp.cn/97575.Doc
tal.ndbfp.cn/53573.Doc
tal.ndbfp.cn/73555.Doc
tal.ndbfp.cn/19711.Doc
tak.ndbfp.cn/11315.Doc
tak.ndbfp.cn/48206.Doc
tak.ndbfp.cn/84440.Doc
tak.ndbfp.cn/68684.Doc
tak.ndbfp.cn/37791.Doc
tak.ndbfp.cn/17913.Doc
tak.ndbfp.cn/68468.Doc
tak.ndbfp.cn/73771.Doc
tak.ndbfp.cn/08848.Doc
tak.ndbfp.cn/66040.Doc
taj.ndbfp.cn/77937.Doc
taj.ndbfp.cn/77999.Doc
taj.ndbfp.cn/33595.Doc
taj.ndbfp.cn/88602.Doc
taj.ndbfp.cn/31779.Doc
taj.ndbfp.cn/53773.Doc
taj.ndbfp.cn/97373.Doc
taj.ndbfp.cn/99197.Doc
taj.ndbfp.cn/73119.Doc
taj.ndbfp.cn/91599.Doc
tah.ndbfp.cn/02648.Doc
tah.ndbfp.cn/66006.Doc
tah.ndbfp.cn/02280.Doc
tah.ndbfp.cn/42028.Doc
tah.ndbfp.cn/17335.Doc
tah.ndbfp.cn/31351.Doc
tah.ndbfp.cn/44000.Doc
tah.ndbfp.cn/20826.Doc
tah.ndbfp.cn/68648.Doc
tah.ndbfp.cn/91531.Doc
tag.ndbfp.cn/93937.Doc
tag.ndbfp.cn/39911.Doc
tag.ndbfp.cn/42668.Doc
tag.ndbfp.cn/24600.Doc
tag.ndbfp.cn/13773.Doc
tag.ndbfp.cn/11757.Doc
tag.ndbfp.cn/08202.Doc
tag.ndbfp.cn/99553.Doc
tag.ndbfp.cn/17113.Doc
tag.ndbfp.cn/06286.Doc
taf.ndbfp.cn/82284.Doc
taf.ndbfp.cn/17799.Doc
taf.ndbfp.cn/37391.Doc
taf.ndbfp.cn/71377.Doc
taf.ndbfp.cn/93339.Doc
taf.ndbfp.cn/95139.Doc
taf.ndbfp.cn/73719.Doc
taf.ndbfp.cn/06464.Doc
taf.ndbfp.cn/77993.Doc
taf.ndbfp.cn/66268.Doc
tad.ndbfp.cn/95559.Doc
tad.ndbfp.cn/99935.Doc
tad.ndbfp.cn/75577.Doc
tad.ndbfp.cn/75191.Doc
tad.ndbfp.cn/13137.Doc
tad.ndbfp.cn/99339.Doc
tad.ndbfp.cn/11979.Doc
tad.ndbfp.cn/80264.Doc
tad.ndbfp.cn/24088.Doc
tad.ndbfp.cn/66460.Doc
tas.ndbfp.cn/86462.Doc
tas.ndbfp.cn/04080.Doc
tas.ndbfp.cn/62266.Doc
tas.ndbfp.cn/57191.Doc
tas.ndbfp.cn/22408.Doc
tas.ndbfp.cn/35555.Doc
tas.ndbfp.cn/37113.Doc
tas.ndbfp.cn/02048.Doc
tas.ndbfp.cn/02260.Doc
tas.ndbfp.cn/86666.Doc
taa.ndbfp.cn/66442.Doc
taa.ndbfp.cn/20000.Doc
taa.ndbfp.cn/88422.Doc
taa.ndbfp.cn/59313.Doc
taa.ndbfp.cn/71517.Doc
taa.ndbfp.cn/77913.Doc
taa.ndbfp.cn/48802.Doc
taa.ndbfp.cn/40682.Doc
taa.ndbfp.cn/33391.Doc
taa.ndbfp.cn/31131.Doc
tap.ndbfp.cn/84404.Doc
tap.ndbfp.cn/66684.Doc
tap.ndbfp.cn/42824.Doc
tap.ndbfp.cn/66422.Doc
tap.ndbfp.cn/19753.Doc
tap.ndbfp.cn/97359.Doc
tap.ndbfp.cn/64840.Doc
tap.ndbfp.cn/33913.Doc
tap.ndbfp.cn/71533.Doc
tap.ndbfp.cn/40424.Doc
tao.ndbfp.cn/24888.Doc
tao.ndbfp.cn/17953.Doc
tao.ndbfp.cn/97117.Doc
tao.ndbfp.cn/11931.Doc
tao.ndbfp.cn/40886.Doc
tao.ndbfp.cn/66846.Doc
tao.ndbfp.cn/86460.Doc
tao.ndbfp.cn/68004.Doc
tao.ndbfp.cn/60822.Doc
tao.ndbfp.cn/95351.Doc
tai.ndbfp.cn/55391.Doc
tai.ndbfp.cn/99391.Doc
tai.ndbfp.cn/44222.Doc
tai.ndbfp.cn/84248.Doc
tai.ndbfp.cn/73179.Doc
tai.ndbfp.cn/77973.Doc
tai.ndbfp.cn/97597.Doc
tai.ndbfp.cn/97559.Doc
tai.ndbfp.cn/37171.Doc
tai.ndbfp.cn/73575.Doc
tau.ndbfp.cn/99711.Doc
tau.ndbfp.cn/75391.Doc
tau.ndbfp.cn/53557.Doc
tau.ndbfp.cn/99171.Doc
tau.ndbfp.cn/51517.Doc
tau.ndbfp.cn/88424.Doc
tau.ndbfp.cn/86044.Doc
tau.ndbfp.cn/31913.Doc
tau.ndbfp.cn/35931.Doc
tau.ndbfp.cn/53597.Doc