为什么在VS2013中无法识别“字符”标识符?

时间:2019-04-17 13:45:34

标签: c++

我只是使用VS2013来构建HEVC参考软件。在这里,我编写了一个C ++文件并想要构建它。但是,它始终表明“标识符“ Char”未定义”。

我也使用'UChar *',在VS2013中还可以,但是未显示'Char *'...

对此我感到困惑。可以请我吗?

谢谢!

我试图使用'Char *'在VS2013中定义字符串变量,但是,它返回了错误消息。...

void recordMBInfo(TComDataCU*& pcCU, SliceType sliceType)
{
Char* modeInfo;
Char* parSize = pcCU->getPartitionSize();
Bool* skipFlag = pcCU->getSkipFlag();
Char* preMode = pcCU->getPredictionMode();
UChar* puhDepth = pcCU->getDepth();

Char* phQP = pcCU->getQP();


modeInfo = new Char[pcCU->getTotalNumPart() + 1];

我的问题是'UChar *'在VS2013中是正确的,但是'Char *'返回了错误消息。我不确定这个原因。

2 个答案:

答案 0 :(得分:3)

Char不是原始类型。我认为您可能会提到char。如果要使用Char,则必须定义Char的含义。也许您忘记了其中定义了Char的库。

答案 1 :(得分:1)

根据C ++标准,CharUCharBool均未定义为类型。

它们很可能是MFC或ATL之类的库的一部分,并且可能(您可以但希望)是typedef,用于诸如charunsigned char和{{ 1}}。

由于boolTComDataCU都不都是C ++标准类,因此研究与该类相关的文档,以了解需要包含哪些其他标头可能是一个简单的例子。