2013-10-31 98 views
-1

我正在使用System :: IO :: Ports作为需要通过串口发送数据的项目,而且我不确定为什么在我的数据类型中使用“^”运算符。这个C++应用程序中按位XOR运算符的用途是什么?

举例来说,利用这个代码片段:

SerialPort^ serialPort = gcnew SerialPort();

array<String^>^ serialPorts = SerialPort::GetPortNames();

现在究竟是这里的^操作符的目的是什么?我知道排他性或操作是什么,但我不明白它在这种情况下如何适用。什么是与XOR'd的字符串?

我试图寻找答案,但每个答案都是关于异或逻辑的描述,而不是如何在这种情况下使用它。

该代码起作用,我只是从好奇心的角度提问。如果有人碰巧知道答案,请给我一个答复,我会给你一个疯狂的高五

+0

这不是C++,但是这个东西叫做[C++/CLI](http://de.wikipedia.org/wiki/C%2B%2B/CLI)。 –

+0

它是一个句柄,即一个荣耀的指针。 gcnew分配垃圾收集器可以收集的内存,所以你不能使用原始指针来引用它。 – 2013-10-31 19:01:55

+0

@DanielFrey什么是适当的标签* C++ cli *? –

回答

2

这不是XOR。它的Microsofts在C++(C++/CLI)上旋转。 String^代表system::string,它不同于std::string

0

这不是异或。这是C++/CLI代码和T^(对于任何.NET引用类型T)是“句柄”或受管参考。

相关问题