typeid
std::vector::size_type の型名と、サイズがゼロのクラス A を次のコード ( cppreference )で取得していました。
#include<iostream>
#include <vector>
#include <typeinfo>
using namespace std;
class A {};
int main()
{
vector<int> v(10);
vector<int>::size_type s = v.size();
A a;
cout << typeid(s).name() << endl;
cout << typeid(a).name() << endl;
};
そして、私はこれを出力として得ました:
m
1A
「A」の前の「1」は空の基本クラスの最適化の結果だと思いますが、「m」は何の略で、これは正常ですか?
次の gcc バージョンを使用しています: g++ (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3