我在jupyter笔记本中使用ROOT,并且在定义以下功能时遇到问题:
#include <vector>
#include <string>
#include <iostream>
//---cell separation---
using namespace std;
//---cell separation---
vector<string> split(string input, char delim){
vector<string> ret;
string temp;
for(char letter:input){
if(letter!=delim){
temp+= letter;
}else{
ret.push_back(temp);
temp.clear();
}
}
ret.push_back(temp);
return ret;
}
jupyter单元返回如下错误消息:
错误:此处不允许使用函数定义
vector <字符串> split(字符串输入,char delim){ ^
并且未定义split函数。 但是,我编写了相同的代码,可以通过本地g ++进行编译,并且可以正常工作。
这是一个已知的ROOT错误吗?我认为函数定义可以解释为矢量对象的某种实例化。
我正在寻找避免该问题的替代方法。
最诚挚的问候。
答案 0 :(得分:0)
此面板(https://github.com/QuantStack/xeus-cling/issues/40)为我提供了另一种方法,例如使用auto或typedef替换“ vector