|
|
1
5
您可以在内部使用模板来生成必要的代码。
一种方法是生成一个包含100个函数指针的调度表,然后在运行时对其进行索引。
此助手将生成调度表并执行调用:
那么你也可以这样做
如果您发现在一些地方需要这个,您可以抽象出一些细节,或者使用一个库,例如
Petra
,它提供了
|
|
|
2
0
我想问题是这个模板号是什么?它有点像内部缓冲区大小,还是更像命令字节? 有人假设,一般的C++程序只会生成特定的几个参数值。 bast方法可能是枚举一些典型的缓冲区大小或命令名,并仅实例化这些大小,因此如果c代码使用您的枚举作为参数,它将正常工作,否则它会(严重失败)断言。 如果新条目是合理的,那么添加它们会很麻烦,但您可以为此编写一个脚本。 另一种方法可能是生成损坏的命名存根,即生成一个foo\uu 1()foo\uu 2()等,也许可以使用boost扩展预处理器来提供帮助。同样,C程序员会自动限制在编译时发布的方法和范围内。 |
|
|
MaPo · Linux,设置锁定ICMP_过滤器选项 9 月前 |
|
Doohyeon Won · 内联函数上的奇怪现象?[关闭] 9 月前 |
|
|
Bobby · 复合字面值总是左值吗? 9 月前 |
|
9-Pin · C: 嵌套结构的堆栈内存分配 9 月前 |