typedef int abc;
class Some{
public:
abc foo(){...}
typedef double abc;
};
在上面的代碼中的參數列表裏,我明白了,我得到一個錯誤:因爲在這本書 error: changes meaning of 'abc' from 'typedef int abc'
C++底漆,第五edti
It recently came to my attention成員函數完全影子在課堂內部具有相同名稱的自由函數。完全意味着每個具有相同名稱的自由函數都不考慮重載分辨率。我可以理解爲什麼它與somwthing這樣做: void f();
struct S
{
void f();
void g()
{
f(); // calls S::f inste
下面的代碼不會編譯上Ideone或鍵盤,產生等錯誤: 'X' was not declared in this scope 但它確實對VC++ 2010: #include <iostream>
#include <typeinfo>
template<typename T>
struct Base
{
typedef T X;
}