In the previous DLL sample, we had to export each function of the object, and we depended on the name-mangling scheme of the compiler.
在以前的DLL例子里,我们必须导出对象里每个函数,且我们依赖于编译器的命名排编。
There is no standard for name-mangling, so you have to provide objects for each compiler that a potential client might want to use for their implementation.
不存在标准的命名排编,所以你不得不提供为每个编译器服务的对象,潜在的客户端需要用什么编译器实现,你就要对应处理一下。
A few parameters affect mangling of file name case.
有一些参数会影响名称大小写的改编。
Note the lack of name mangling for this function as well.
请注意这一职能错位的名称,以及缺乏。
The only way for the user's code to be compiled with compatible name mangling is for it to have the full function declarations at compile time.
唯一的方式为用户与兼容的名称改编的代码被编译为它在编译时完整的函数声明。
The name mangling is not standardized, and thus each compiler decorates functions differently.
命名混乱不是标准化的,每个编译器修饰函数的办法不一样。
Another issue, related to name mangling, is incompatibility between compilers.
另外一个问题,和命名混乱相关,和编译器的不兼容性。
Due to the name mangling, it is very difficult for the client to use dynamic loading: We would have to pass all the decorated names to GetProcAddress and save the returned pointer somewhere.
由于命名上可能晦涩难懂,让客户端动态加载非常困难:我们必须传递所有修饰的名称到GetProcAddress且保存返回的指针到别的地方。
Due to the name mangling, it is very difficult for the client to use dynamic loading: We would have to pass all the decorated names to GetProcAddress and save the returned pointer somewhere.
由于命名上可能晦涩难懂,让客户端动态加载非常困难:我们必须传递所有修饰的名称到GetProcAddress且保存返回的指针到别的地方。
应用推荐