2

我想知道如何在 C++/CLI 中检查 ArrayList 是否存在。

System::Collections::ArrayList %queue_tx

我试过if ( nullptr != queue_tx ) { queue_tx.Add(msg); }了,但没有用。我将queue_tx作为参数传递给函数,并且应该有可能未设置此参数(或设置为nullptr)。

编译器抛出'!=' : no conversion from 'System::Collections::ArrayList' to 'nullptr'.

我该怎么做呢?

4

2 回答 2

2

%定义了一个引用变量,这就是它不能为空的原因

如果您会像这样声明 ArrayList:

System::Collections::ArrayList^ queue_tx

那么你的 nullptr 检查将是可能的并且有意义

否则只需使用queue_tx.Count()来检查集合是否为空

我建议过去:

引用变量和指针变量的区别

何时使用参考 VS 指针

于 2013-07-09T13:44:50.543 回答
1

T%a为空是完全不可能的。

于 2013-07-09T13:34:12.460 回答