Unverified Commit 788db3aa authored by Ge Jun's avatar Ge Jun Committed by GitHub

Merge pull request #748 from lingbin/read_brpc_src

Fix a typo in bvar_c++.md
parents 753cd7a9 f4a6c92a
...@@ -135,7 +135,7 @@ public: ...@@ -135,7 +135,7 @@ public:
Variable是所有bvar的基类,主要提供全局注册,列举,查询等功能。 Variable是所有bvar的基类,主要提供全局注册,列举,查询等功能。
用户以默认参数建立一个bvar时,这个bvar并未注册到任何全局结构中,在这种情况下,bvar纯粹是一个更快的计数器。我们称把一个bvar注册到全局表中的行为为”曝光“,可通过**expose**函数曝光: 用户以默认参数建立一个bvar时,这个bvar并未注册到任何全局结构中,在这种情况下,bvar纯粹是一个更快的计数器。我们称把一个bvar注册到全局表中的行为为“曝光”,可通过`expose`函数曝光:
```c++ ```c++
// Expose this variable globally so that it's counted in following functions: // Expose this variable globally so that it's counted in following functions:
// list_exposed // list_exposed
...@@ -144,7 +144,7 @@ Variable是所有bvar的基类,主要提供全局注册,列举,查询等 ...@@ -144,7 +144,7 @@ Variable是所有bvar的基类,主要提供全局注册,列举,查询等
// find_exposed // find_exposed
// Return 0 on success, -1 otherwise. // Return 0 on success, -1 otherwise.
int expose(const butil::StringPiece& name); int expose(const butil::StringPiece& name);
int expose(const butil::StringPiece& prefix, const butil::StringPiece& name); int expose_as(const butil::StringPiece& prefix, const butil::StringPiece& name);
``` ```
全局曝光后的bvar名字便为name或prefix + name,可通过以_exposed为后缀的static函数查询。比如Variable::describe_exposed(name)会返回名为name的bvar的描述。 全局曝光后的bvar名字便为name或prefix + name,可通过以_exposed为后缀的static函数查询。比如Variable::describe_exposed(name)会返回名为name的bvar的描述。
...@@ -319,7 +319,7 @@ reducer << e1 << e2 << e3的作用等价于reducer = e1 op e2 op e3。 ...@@ -319,7 +319,7 @@ reducer << e1 << e2 << e3的作用等价于reducer = e1 op e2 op e3。
顾名思义,用于累加,Op为+。 顾名思义,用于累加,Op为+。
```c++ ```c++
bvar::Adder<int> value; bvar::Adder<int> value;
value<< 1 << 2 << 3 << -4; value << 1 << 2 << 3 << -4;
CHECK_EQ(2, value.get_value()); CHECK_EQ(2, value.get_value());
bvar::Adder<double> fp_value; // 可能有warning bvar::Adder<double> fp_value; // 可能有warning
...@@ -340,7 +340,7 @@ CHECK_EQ("hello world", concater.get_value()); ...@@ -340,7 +340,7 @@ CHECK_EQ("hello world", concater.get_value());
用于取最大值,运算符为std::max。 用于取最大值,运算符为std::max。
```c++ ```c++
bvar::Maxer<int> value; bvar::Maxer<int> value;
value<< 1 << 2 << 3 << -4; value << 1 << 2 << 3 << -4;
CHECK_EQ(3, value.get_value()); CHECK_EQ(3, value.get_value());
``` ```
Since Maxer<> use std::numeric_limits<T>::min() as the identity, it cannot be applied to generic types unless you specialized std::numeric_limits<> (and overloaded operator<, yes, not operator>). Since Maxer<> use std::numeric_limits<T>::min() as the identity, it cannot be applied to generic types unless you specialized std::numeric_limits<> (and overloaded operator<, yes, not operator>).
...@@ -350,7 +350,7 @@ Since Maxer<> use std::numeric_limits<T>::min() as the identity, it cannot be ap ...@@ -350,7 +350,7 @@ Since Maxer<> use std::numeric_limits<T>::min() as the identity, it cannot be ap
用于取最小值,运算符为std::min。 用于取最小值,运算符为std::min。
```c++ ```c++
bvar::Maxer<int> value; bvar::Maxer<int> value;
value<< 1 << 2 << 3 << -4; value << 1 << 2 << 3 << -4;
CHECK_EQ(-4, value.get_value()); CHECK_EQ(-4, value.get_value());
``` ```
Since Miner<> use std::numeric_limits<T>::max() as the identity, it cannot be applied to generic types unless you specialized std::numeric_limits<> (and overloaded operator<). Since Miner<> use std::numeric_limits<T>::max() as the identity, it cannot be applied to generic types unless you specialized std::numeric_limits<> (and overloaded operator<).
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment