Второй аргумент используемого вами конструктора TFile - строка ( ссылка на c). В том, что вы написали, веб-интерфейс компилятора (будь то обычное приложение компилятора, которое вы используете напрямую, или отправленная компиляция из командной строки root, или цепляющаяся как веб-интерфейс jit-компилятора), NEW
- просто голая неизвестное слово.
Правильная версия будет
TFile* file = new TFile("test.root", "NEW");
(или мое предложение
TFile* file = TFile::Open("test.root", "NEW");
, потому что Open
позволяет другие имена файлов , которые находятся в сети, если вам это когда-либо понадобится, и вы также можете предпочесть std::unique_ptr
вместо пустого указателя, чтобы ваш файл автоматически закрывался, когда указатель выходит из области действия
std::unique_ptr<TFile> file{TFile::Open("file.root", "NEW")};
… хотя я не уверен, что последний хорошо работает со всеми шаблонами использования и учебными пособиями в inte rnet that…)