如何使用 C# 在地图容器中使用 lambda 表达式编写 std::function?
How to write a std::function with lambda expression in a map container using C#?
如何将下面的 C++ 代码重写为 C#?
std::string someVariable;
std::map<std::string, std::function<void (std::string)>> myMap;
myMap.insert(std::make_pair("someText", [&](std::string input){someVariable = input;});
我试过与委托一起玩,但我还不太了解它。
不确定为什么要这样做,但这是等效的 C# 代码:
string someVariable = string.Empty;
Dictionary<string, Action<string>> map = new Dictionary<string, Action<string>>();
map.Add("someText", (input) => someVariable = input);
map["someText"]("someInput");
Console.WriteLine(someVariable);
输出:
someInput
如何将下面的 C++ 代码重写为 C#?
std::string someVariable;
std::map<std::string, std::function<void (std::string)>> myMap;
myMap.insert(std::make_pair("someText", [&](std::string input){someVariable = input;});
我试过与委托一起玩,但我还不太了解它。
不确定为什么要这样做,但这是等效的 C# 代码:
string someVariable = string.Empty;
Dictionary<string, Action<string>> map = new Dictionary<string, Action<string>>();
map.Add("someText", (input) => someVariable = input);
map["someText"]("someInput");
Console.WriteLine(someVariable);
输出:
someInput