MFC中函数名前加 :: 原因

在开发MFC之前,开发的是以AFx(Application Frameworks,x是没有什么意义的)开头的一些函数。但是那个时候开发的函数并没有进行封装,但是有很多很有用的函数。最后AFx开发失败,于是就转而开发MFC。但是对于在AFx中一些有用的函数,希望能够放在里面用。于是就放在最外层。但是在里面的类中也有一些和它同名的函数。于是如果想调用最外层的函数,就需要在函数名加两个冒号来进行识别。--外面的也就是全局的.如果不加,就是调用里层的函数。

时间: 2024-10-13 23:50:19

MFC中函数名前加 :: 原因的相关文章

JS 中函数名后面加与不加括号的区别

1 a.onmouseover = fn1; 2 a.onmouseout = fn2; 3 function fn1(){ 4 div.className = "erweima show"; 5 } 6 function fn2(){ 7 div.className = "erweima hide"; 8 } 只要调用函数进行执行,都必须加括号. 函数是一个对象,函数名是指向这个对象的指针. 函数名后面加上括号就表示立即调用执行这个函数里面的代码. 使用不带圆括号

PHP 的 返回引用(方法名前加&) 和 局部静态变量(static)

先阅读手册==========从函数返回一个引用,必须在函数声明和指派返回值给一个变量时都使用引用操作符 & : 例子 17-13. 由函数返回一个引用 <?php   function &returns_reference()   {       $someref = 0;       return $someref;   }      $newref = &returns_reference();//相当于 $newref = &$someref;   ?>

JS中函数名与变量名冲突

在JS中如果函数名与变量名冲突,JS是怎么执行的... function a(){ console.log(12); } a() var a = 10; console.log(a); JS会先把变量的声明放在最前面,然后将定义式函数放在变量声明的后面,后面赋值语句按原来的顺序I依次执行. 因此上面的代码等价于 var a; function a(){ console.log(12); } a(); a = 10; console.log(a); 因此结果是12   10.

JS中函数名与函数名()的区别

初学JS中,遇到一个问题.代码如下" <script type="text/javascript"> var fn=function(){   alert("你好");   setTimeout(fn,2000);  }; fn();  </script> 此代码是在页面每个两秒弹出提示框"你好".  但是将setTimeout(fn,2000)改为setTimeout(fn(),2000),则是没有间隔的弹出提

通过函数名后加const重载的函数如何区分调用

参考网址:http://bbs.csdn.net/topics/391833689?page=1 在一般情况下默认调用不带const的函数. 想要调带const函数,解决办法: 1. 将调用发生的函数加const 2. 如果重载函数在某类内,将类实例(或this)做强制转换(const): const_cast<const A*>(this)->func();

php函数名前添加&amp; 函数的引用返回

function &test(){ static $b=0; $b= $b+1; return $b; } $a= test(); echo $a,"\n"; $a = 3; $a= test(); echo $a,"\n"; $a = &test(); echo $a,"\n"; $a= 10; $a= test(); echo $a,"\n"; 结果: test()函数引用返回就是   $a 引用$b  

c#中传递参数前加out

首先:两者都是按地址传递的,使用后都将改变原来参数的数值. 其次: rel 可以把参数的数值传递进函数,但是 out 是要把参数清空,就是说你无法把一个数值 从 out 传递进去的, out 进去后,参数的数值为空,所以你必须初始化一次.这个就是两个的区 别,或者说就像有的网友说的, rel 是有进有出, out 是只出不进.

c函数声明前加typedef是什么情况

刚才看到APUE(高级UNIX环境编程)里面的apue.h中有一行 typedef void Sigfunc(int); 没搞懂什么意思 其实就是定义一个函数指针类型,等价于 typedef void (*Sigfunc)(int) 参考资料: http://blog.csdn.net/dingyuanpu/article/details/5572362 http://www.cnblogs.com/shenlian/archive/2011/05/21/2053149.html

C++ 编译器的函数名修饰规则

C++ 编译器的函数名修饰规则 函数名字修饰(Decorated Name)方式 函数的名字修饰(Decorated Name)就是编译器在编译期间创建的一个字符串,用来指明函数的定义或原型.LINK程序或其他工具有时需要指定函数的名字修饰来定位函数的正确位置. 多数情况下程序员并不需要知道函数的名字修饰,LINK程序或其他工具会自动区分他们.当然,在某些情况下需要指定函数的名字修饰,例如在C++程序中, 为了让LINK程序或其他工具能够匹配到正确的函数名字,就必须为重载函数和一些特殊的函数(如