根据MSDN,lpClassName
的{{1}}参数是可选的。
lpClassName [in,optional]
但是,文档没有提及传递CreateWindowEx
的含义。更重要的是,如果传递NULL
,则窗口管理器无法为新窗口找到窗口过程。
那么,文档错了吗?或者它是否正确,有些情况NULL
是NULL
的有效值?
答案 0 :(得分:4)
lpClassName
的{{1}}参数被声明为CreateWindowEx
,但它实际上可以是指向字符串的指针,也可以是LPCTSTR
或{返回的类原子{1}}。
理想情况下,类型注释会准确指定此参数允许的内容,但我猜注释语言没有办法描述与其声明类型不匹配的事物类型。
他们可以做的最好的事情是将其声明为可选,以表明该字符串可能无效。