学习过程中,书上有句话
CBrush brBackGround(::GetSysColor(COLOR_WINDOW));
我能明白这句话的意思,
但我不明白VC的语法::
正常情况似乎是
变量=类名::函数名(参数列表)
那么什么情况下,省略类名?
初学,请详细说明。

解决方案 »

  1.   

    :: 调全局API函数
    类名::函数名 调类中的函数
    如果在类的实现代码里  不用加::  直接调的函数就是类自己的函数
      

  2.   

    CBrush brBackGround(::GetSysColor(COLOR_WINDOW));
    再请教一下,有无完整写法,如
    CBrush brBackGround(???::GetSysColor(COLOR_WINDOW));
      

  3.   

    对于API,是全局的,它不属于某个类。
      

  4.   

    CBrush brBackGround(GetSysColor(COLOR_WINDOW));
    直接写就行了“变量=类名::函数名(参数列表)
    那么什么情况下,省略类名?”不是省略了类名,(::)是作用域限定符,可以用来标识全局变量或函数,当然也用来标识是哪个类的。