Tôi biết rằng các hàm mẫu không bị nhiều định nghĩa khi liên kết, như các hàm thành viên được định nghĩa bên trong một lớp, theo mặc định. Ngoài ra, constexpr
đối tượng có liên kết nội bộ, nhưng các biến mẫu có liên kết bên ngoài (ý tôi là ở phạm vi không gian tên và cho C++ 14 trong cả hai trường hợp).Giới thiệu về các vi phạm ODR và biến mẫu
Còn về?
template<class T>
constexpr T i_am_odr_safe{};
Có i_am_odr_safe
có liên kết bên ngoài hoặc nội bộ trong C++ 14? và có an toàn đối với nhiều định nghĩa như mẫu chức năng không?
Nói cách khác, là i_am_odr_safe
không an toàn?