C++工作笔记-作用域( :: )的另一种玩法
生活随笔
收集整理的這篇文章主要介紹了
C++工作笔记-作用域( :: )的另一种玩法
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
當(dāng)有要寫的函數(shù)與STL里面重名時(shí),如果不加作用域的話會(huì)報(bào)如下錯(cuò)誤。
先說明下代碼:
template<typename T> void swap(T &a, T &b){cout << "調(diào)用了自己寫的" << endl;T c = a;a = b;b = c; }void main(){int a = 1, b = 2;cout << "交換前:a:" << a << " b:" << b << endl;swap(a, b);cout << "交換后:a:" << a << " b:" << b << endl;getchar(); }運(yùn)行截圖如下
這里的解決方法有很多,一個(gè)是注釋掉using namespace std;
還有一個(gè)就是加上::這個(gè)作用域,如下面這個(gè)代碼
#include <iostream> using namespace std;template<typename T> void swap(T &a, T &b){cout << "調(diào)用了自己寫的" << endl;T c = a;a = b;b = c; }void main(){int a = 1, b = 2;cout << "交換前:a:" << a << " b:" << b << endl;::swap(a, b);cout << "交換后:a:" << a << " b:" << b << endl;getchar(); }運(yùn)行截圖如下:
如果要用std就是std::swap
總結(jié)
以上是生活随笔為你收集整理的C++工作笔记-作用域( :: )的另一种玩法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt界面制作(QSS、获取屏幕分辨率、自
- 下一篇: Qt工作笔记-两种方法从容器中筛选出父类