簡體   English   中英

std::add_const,為什么實現可以參考?

[英]std::add_const, why the implementation works for reference?

在 cppreference add_const ,據說我們可以將其實現為:

template< class T> struct add_const { typedef const T type; };

當我嘗試引用類型時,例如std::add_const<int&> ,它是int&

我的問題是為什么它可以在沒有特定版本供參考的情況下工作,因為int& const是非法的?

在C++11標准的[dcl.ref]p1中,可以找到:

cv 限定的引用是格式錯誤的,除非通過使用 typedef (7.1.3) 或模板類型參數 (14.3) 引入 cv 限定符,在這種情況下,忽略 cv 限定符。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM