Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
可以访问模板“类型”,例如在 std
std::vector<int>::size_type
作为模板参数传递的对象是否可以具有相同的东西?例如:
template<int i> class A { //? }; A<3> instance; int number = instance::???? //<--- assigns 3 to number
是否有可能在运行时再次获得对象类型中的 3?无需在 A 类中创建特定成员(这会增加对象的大小)
谢谢
编译器在编译时就知道变量的类型,这只是让它放弃它的问题。
template<int i> int get(const A<i> & instance) { return i; }
template<int i> class A { public: enum { number = i }; }; int main() { A<3> instance; std::cout << instance.number; return 0; }