public static member function
<string>

std::char_traits::assign

character (1)
static void       assign (char_type& r, const char_type& c);
array (2)
static char_type* assign (char_type* p, size_t n, char_type c);
character (1)
static void       assign (char_type& r, const char_type& c) noexcept;
array (2)
static char_type* assign (char_type* p, site_t n, char_type c);
Assign character
c 賦值給一個字元 (r) 或一個字元陣列 (s)。

(1) character
c 賦值給 r, 相當於使用r=c.
(2) array
c 賦值給 s 指向的陣列中的前 n 個字元,相當於使用operator=.

char_traits 的標準特化中,此函式的行為與內建的行為相同operator=,但自定義的 *字元特徵* 類可以在與其字元型別的賦值操作一致的情況下提供替代行為。

引數

r
字元的左值引用。
c
一個字元值。
p
指向將要寫入字元的陣列的指標。
n
要用 c 的值填充的字元數。

成員型別char_type字元型別(即,char_traits 中的類模板引數)。
size_t 是一個無符號整數型別。

返回值

無 (對於 (1))。
p (對於 (2))。

複雜度

常量。

異常安全

除非 s 指向的陣列不夠長,否則此成員函式在任何標準特化中都不會丟擲異常(無丟擲保證)。
否則,將導致未定義行為

另見