以下结果是由VS2010里面测试得出:

------------------------------------------------------------------

/*
函数名、类名、名称空间、@@、函数访问级别、调用约定、返回类型、参数类型、有无参数(@Z、XZ)
函数名: ?函数名
类名: @类名
名称空间:@名称空间名
函数访问级别:
純函数是Y,静态类方法public,protected,private依次是S,K,C
非静态类方法public,protected,private依次是QA,IA,AA
调用约定:__cdecl 是 A , __stdcall 是 G
对于返回类型与参数类型:
void,char,signed char,unsigned char,short,unsigned short,
int,unsigned int,long,unsigned long,float,double,long double,
long long,unsigned long
依次对应:X, D, C, E, F, G, H, I, J, K, M, N, O, _J, _K
有无参数:有参数@Z、无参数XZ
-------------------------------------------------------
int foo(void); ?foo@@YAHXZ
short foo(void); ?foo@@YAFXZ
short foo(int, int); ?foo@@YAFHH@Z
short __cdecl foo(int, int); ?foo@@YAFHH@Z
short __stdcall foo(int, int); ?foo@@YGFHH@Z
short __stdcall muyou::foo(int,int) ?foo@muyou@@YGFHH@Z
public: static short __stdcall muyou::a::foo(int,int) ?foo@a@muyou@@SGFHH@Z
protected: static short __stdcall muyou::a::foo(int,int) ?foo@a@muyou@@KGFHH@Z
private: static short __stdcall muyou::a::foo(int,int) ?foo@a@muyou@@CGFHH@Z
private: short __stdcall muyou::a::foo(int,int) ?foo@a@muyou@@AAGFHH@Z
protected: short __stdcall muyou::a::foo(int,int) ?foo@a@muyou@@IAGFHH@Z
public: short __stdcall muyou::a::foo(int,int) ?foo@a@muyou@@QAGFHH@Z
-------------------------------------------
void foo(); ?foo@@YAXXZ
void foo(void); ?foo@@YAXXZ
void foo(char); ?foo@@YAXD@Z
void foo(signed char); ?foo@@YAXC@Z
void foo(unsigned char); ?foo@@YAXE@Z
void foo(short); ?foo@@YAXF@Z
void foo(signed short); ?foo@@YAXF@Z
void foo(unsigned short); ?foo@@YAXG@Z
void foo(int); ?foo@@YAXH@Z
void foo(signed int); ?foo@@YAXH@Z
void foo(unsigned int); ?foo@@YAXI@Z
void foo(long); ?foo@@YAXJ@Z
void foo(signed long); ?foo@@YAXJ@Z
void foo(unsigned long); ?foo@@YAXK@Z
void foo(float); ?foo@@YAXM@Z
void foo(double); ?foo@@YAXN@Z
void foo(long double); ?foo@@YAXO@Z
void foo(long long); ?foo@@YAX_J@Z
void foo(signed long long);?foo@@YAX_J@Z
void foo(unsigned long long);?foo@@YAX_K@Z
*/
namespace muyou{
class a
{
public:
short __stdcall foo(int, int);
public:
void vf(){foo(1, 1);}
};
}
using muyou::a;
int main(void)
{
a oa;
oa.vf(); return 0;
}

  点击下载

C++ 修饰名的格式探究的更多相关文章

  1. 问题解决——warning C4503 超出修饰名的长度,名称被截断

    ========================声明============================ 本文原创,转载请注明作者和出处,并保证文章的完整性(包括本声明). 本文不定期修改完善,为 ...

  2. 转 sql 时间转换格式 convert(varchar(10),字段名,转换格式)

    convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121)CONVERT为日期转换函数,一般就是在时间类型(datetime, ...

  3. (转)sql 时间转换格式 convert(varchar(10),字段名,转换格式)

    convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121) CONVERT为日期转换函数,一般就是在时间类型(datetime ...

  4. 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格式不一致的解决办法

    -----转载:http://blog.csdn.net/sgear/article/details/7663502 关于asp.net C# 导出Excel文件 打开Excel文件格式与扩展名指定格 ...

  5. Sybase datetime 时间转换格式 convert(varchar(10),字段名,转换格式)

    convert(varchar(10),字段名,转换格式)sybase下convert函数第三个参数(时间格式)比如:1.select user_id,convert(varchar(10),dayt ...

  6. convert(varchar(10),字段名,转换格式

    sql 时间转换格式 ) convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121)CONVERT为日期转换函数,一般就是在时 ...

  7. sql 时间转换格式 convert(varchar(10),字段名,转换格式)

    convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121) CONVERT为日期转换函数,一般就是在时间类型(datetime ...

  8. vbs 之 解决打开Excel文件格式与扩展名指定格式不一致的问题

    ' Q:解决打开Excel文件格式与扩展名指定格式不一致的问题' A: 使用工作簿saveAs时,往往忽略掉它的第二个参数FileFormat,添加即可. 比如: set bookDiff = oEx ...

  9. Microsoft Excel软件打开文件出现文件的格式与文件扩展名指定格式不一致?

    今天winform代码做一个datagridview数据导出功能,导出的excel文件的后缀是*.xls(Micorsoft Excel 2000), 而本机新建的excel文件的后缀是 *.xlsx ...

随机推荐

  1. Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime

    Mac下打开eclipse 始终提示 你需要安装Java SE 6 Runtime        周银辉 我的mac os 版本是10.9.2,  JDK配置得好好的,但打开eclipse时还是提示需 ...

  2. Redis从入门到精通之一:序篇

    Redis一直是我想好好研究的组件,但是之前受限于工作场景,没有真正意义的使用过.但是目前工作中,Redis作为主要的缓存组件来缓冲服务器的压力.所以,本序列主要结合实际工作中遇到的各种Redis的设 ...

  3. MVC模式在UI里的应用

    In a similar way to other parts of a game, user interfaces usually go through several iterations unt ...

  4. 理解C# 4 dynamic(2) – ExpandoObject的使用

    ExpandoObject的使用非常简单,很容易入手.上一篇里面已经有详细的介绍了,可以看这里(理解C# 4 dynamic(1) - var, object, dynamic的区别以及dynamic ...

  5. CentOS 7.2 安装配置mysql主从服务器

    MySQL官方压缩包安装: 1:下载mysql官方版本,此处以目前最新版本5.7.14为例,下载的64位版本文件为: mysql-5.7.14-linux-glibc2.5-x86_64.tar 2: ...

  6. 微信连WiFi expired timestamp 和sign错误小坑解决

    0.微信连WiFi需要时间戳毫秒,但是PHP本身没有自带这个函数.但是相对来说,Java和js获取毫秒时间戳就比较方便. 既然PHP没有,那么就自己写一个获取毫秒时间戳的函数,否则就会失败.实在懒得写 ...

  7. bzoj3731: Gty的超级妹子树

    一代神题啊orz(至少是以前年代的神题吧) 块状树 复杂度nsqrtnlogn 真是exciting 还没有卡时限 话不多说直接上代码 (最近解锁了记事本写代码的技能...感觉越来越依赖OJ调试了.. ...

  8. raw_input和input的区别

    raw_input的返回类型是String类型 input的返回类型是int类型 >>> rawinput = raw_input("raw_input:") r ...

  9. Python【第一章】:简介和入门

    ython简介 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承.之 ...

  10. 聊聊HTTPS和SSL/TLS协议

    要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识.1. 大致了解几个基本术语(HTTPS.SSL.TLS)的含义2. 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接 ...