C++ cli ^在C+中是什么意思+;?
所以我刚刚在WinApi中偶然发现了这个函数C++ cli ^在C+中是什么意思+;?,c++-cli,C++ Cli,所以我刚刚在WinApi中偶然发现了这个函数 public: static array<Process^>^ GetProcessesByName( String^ processName ) 公共: 静态数组^GetProcessByName( 字符串^processName ) ^代表什么?似乎很奇怪,以前从未见过这种情况。这是C++/CLI,而^是用于参考的(使用gcnew分配)。引用被垃圾收集 在这个特定的示例中,函数获取对字符串的引用,并返回对进程的引用数组的
public:
static array<Process^>^ GetProcessesByName(
String^ processName
)
公共:
静态数组^GetProcessByName(
字符串^processName
)
^
代表什么?似乎很奇怪,以前从未见过这种情况。这是C++/CLI,而^
是用于参考的(使用gcnew
分配)。引用被垃圾收集
在这个特定的示例中,函数获取对字符串的引用,并返回对进程
的引用数组的引用。对于任何引用类型,都必须使用^
(换句话说,不能使用该类型的非引用变量)
正如注释中指出的,这可能是,但语法基本相同,但使用ref new
而不是gcnew
如前所述,在您的示例中,
^
代表Microsoft的C++/CLI垃圾控制指针
<>但是,在标准C++ +>代码> 中,<强>位元异或运算符> < /强>
运算符^
将其第一个操作数的每一位与其第二个操作数的对应位进行比较。如果一位为0,另一位为1,则相应的结果位设置为1。否则,相应的结果位设置为0
#include <iostream>
int main() {
int a = 0x5555;
int b = 0xFFFF;
std::cout << std::hex << ( a ^ b ) << std::endl;
}
#包括
int main(){
INTA=0x5555;
int b=0xFFFF;
C++:C++是C++的,是一个垃圾控制的指针。这不是C++,而是C++ + CLI或C++/CX。这不是C++,它是C++ + CLI。我相信代码> >代码>代表“托管引用”。“塞缪尔,托管C++是在C++ + CLI之前的:CPP”。不代表C++,它也可以是C++,我知道它是OC:)但是它让我在这个位置感到困惑。