Мне требуется переписать небольшой участок кода с C# на C++ для нормальной работы кода однако я не знаю как
Я не давно только начал изучать c++ да и в общем опыт в программировании не большой но что-то делать уже могу однако то чем я сейчас занимаюсь довольно сложно с моими знаниями, я использую Godot Engine для создания игр и раньше писал в встроенным в движок своим языком как python, он GDScript называется, но захотел перейти на другой язык помощнее пока не знаю зачем, я использую gdnative как называют разработчики "Меж-языковые сценарии (скрипты)" то есть можно использовать разные языки однако подключать это для меня было очень сложно, мне просто требуется переписать старый код с другого языка на c++, решение уже найдено однако я не знаю как "конвертировать" с c# на с++ пусть из-за небольшого различия в синтаксисе, или я чего-то не понимаю и компилятор выдаёт ошибку
public class Player : KinematicBody2D
{
private AnimationNodeStateMachinePlayback _stateMachine;
public override void _PhysicsProcess(float delta)
{
var animTree = (AnimationTree)GetNode("AnimationTree"); //<=== Именно это
_stateMachine = (AnimationNodeStateMachinePlayback)animTree.Get("parameters/playback"); // <=== И это
MyFuncton();
}
void MyFuncton()
{
GD.Print(stateMachine.GetCurrentNode());
}
}
а так у меня просто скопировано:
void Player::_ready()
{
Variant animTree = (AnimationNodeStateMachinePlayback)get_node("AnimationTree");
_stateMachine = animTree.get("parameters/playback");
}
и 3 ошибки:
1я не существует подходящего конструктора для преобразования из "godot::Node *" в "godot::AnimationNodeStateMachinePlayback"
2я class "godot::Variant" не содержит члена "get"
3я идентификатор "state_machine" не определен
я подумал что ошибки из-за различий в языках