我有一个模板功能:
template<typename T>
void foo(const T& value) { bar(value); x = -1; }
Run Code Online (Sandbox Code Playgroud)
我想专门针对一组类型:
template<>
void foo<char>(const char& value) { bar(value); x = 0; }
template<>
void foo<unsigned char>(const unsigned char& value) { bar(value); x = 1; }
Run Code Online (Sandbox Code Playgroud)
它工作正常.当我编译这个:
template<>
void foo<char*>(const char*& value) { bar(value); x = 2; }
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
error C2912: explicit specialization; 'void foo(const char *&)' is not a specialization of a function template
Run Code Online (Sandbox Code Playgroud)
是否可以专门使用char*指针类型参数而不用typedef?
是否可以通过按钮打开和关闭整个树?
我知道为了打开树的所有节点和子节点,我必须调用open_all函数,如: $("#tree").jstree('open_all');
并且为了切换节点:$("#tree").jstree("toggle_node","#1");其中#1是第一个孩子的id.
但是切换功能不会扩展节点的所有子节点.它也没有打开一棵半开的树.我可以在按钮单击时调用open_all和close_all,但是如何找到要调用的方法,如图中是否必须打开或关闭树?