小编Mik*_*ike的帖子

如何为一系列整数值专门化C++模板?

有没有办法根据一系列值而不是一个值进行模板专业化?我知道以下代码不是有效的C++代码,但它显示了我想要做的事情.我正在为8位机器编写代码,因此使用整数和字符的速度有所不同.

template<unsigned SIZE>
class circular_buffer {
   unsigned char buffer[SIZE];
   unsigned int head; // index
   unsigned int tail; // index
};

template<unsigned SIZE <= 256>
class circular_buffer {
   unsigned char buffer[SIZE];
   unsigned char head; // index
   unsigned char tail; // index
};
Run Code Online (Sandbox Code Playgroud)

c++ templates

41
推荐指数
3
解决办法
2874
查看次数

自我更新

什么是终止程序然后从正在终止的程序中运行其他代码的最佳方法?例如,程序自我更新的最佳方法是什么?

patch updating

8
推荐指数
1
解决办法
2480
查看次数

使用BAT从网络共享复制

使用Windows批处理文件将文件从网络共享复制到本地文件系统的最佳方法是什么?通常情况下,我会使用"net use*"但是使用这种方法我怎样才能得到驱动器号?

windows batch-file

8
推荐指数
1
解决办法
2万
查看次数

监控GDI调用

有没有一种工具可以监控GDI调用?

windows monitoring gdi

5
推荐指数
1
解决办法
1261
查看次数

快速磁盘克隆

克隆磁盘时有没有办法让Linux预读?我使用名为"dd"的程序来克隆磁盘.我最后一次这样做,似乎操作系统正在阅读然后写作,但从来没有在同一时间.理想情况下,如果源磁盘可以跟上,目标磁盘将不断等待,而不是等待.

更新:我通常在克隆时选择较大的块大小(例如16M或32MB).

linux storage dd parallel-io

5
推荐指数
3
解决办法
2万
查看次数

上次修改的文件夹

Windows如何确定文件夹的上次修改日期?

windows filesystems

5
推荐指数
1
解决办法
5277
查看次数

枚举结构的成员?

有没有办法枚举C ++或C中的结构(struct |类)的成员?我需要获取成员名称,类型和值。之前,我在一个小型项目中使用了以下示例代码,该项目在全局范围内。我现在遇到的问题是,需要将一组值从GUI复制到对象,文件和VM环境。我可以创建另一个“穷人”的反射系统,或者希望有一个我还没有想到的更好的东西。有人有想法吗?

编辑:我知道C ++没有反射。

union variant_t {
   unsigned int  ui;
   int           i;
   double        d;
   char*         s;
};

struct pub_values_t {
   const char*      name;
   union variant_t* addr;
   char             type;  // 'I' is int; 'U' is unsigned int; 'D' is double; 'S' is string
};

#define pub_v(n,t) #n,(union variant_t*)&n,t
struct pub_values_t pub_values[] = {
   pub_v(somemember,  'D'),
   pub_v(somemember2, 'D'),
   pub_v(somemember3, 'U'),
   ...
};

const int no_of_pub_vs = sizeof(pub_values) / sizeof(struct pub_values_t);
Run Code Online (Sandbox Code Playgroud)

c c++ enumeration

5
推荐指数
1
解决办法
4942
查看次数

静态函数可以比非静态函数更快吗?

staticC 中的函数是否可能更快,因为编译器的优化器会看到所有调用点并因此优化被调用函数的结语和序言?

c compiler-construction optimization static function

4
推荐指数
2
解决办法
1473
查看次数

6/2(1 + 2)返回错误2不是功能

以下语句生成编译时错误.

 int a=6/2(1+2);
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么编译器会生成错误.

c

3
推荐指数
1
解决办法
135
查看次数

开发没有信息的驱动程序

开源/免费软件社区如何为不提供文档的产品开发驱动程序?

linux bsd drivers kernel

2
推荐指数
1
解决办法
351
查看次数