我在 C++ CLI 中定义了以下代码。
但是,当我想调用 SetColor 时,第一个参数应该显示为 System.Drawing.Color; 显示为 ValueType。
这也让我可以将任何变量传递给它。不管是Color
不是。
[System::Runtime::CompilerServices::ExtensionAttribute]
public ref class MyExtensions abstract sealed {
public:
[System::Runtime::CompilerServices::ExtensionAttribute]
static System::String^ SetColor(System::String^ in, System::Drawing::Color^ ext) {
return gcnew System::String("{") +
ext->R.ToString("X") + ext->G.ToString("X") + ext->B.ToString("X")
+ gcnew System::String("}") + in;
}
};