问题列表 - 第5700页

C++:空类对象的大小是多少?

我想知道一个空类的对象大小.它肯定不能是0字节,因为它应该可以像任何其他对象一样引用和指向它.但是,这样的对象有多大?

我用过这个小程序:

#include <iostream>
using namespace std;

class Empty {};

int main()
{
    Empty e;
    cerr << sizeof(e) << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我在Visual C++和Cygwin-g ++编译器上得到的输出是1个字节!这对我来说有点令人惊讶,因为我期望它的机器字大小(32位或4字节).

任何人都可以解释为什么 1字节的大小?为什么不是 4个字节?这是依赖于编译器还是机器?此外,有人可以给出一个更有说服力的理由,说明为什么空类对象的大小不是 0字节?

c++ class object

105
推荐指数
5
解决办法
6万
查看次数

C++ 0x是否支持将std :: wstring转换为UTF-8字节序列?

我看到C++ 0x将添加对UTF-8,UTF-16和UTF-32文字的支持.但是这三种表述之间的转换呢?

我打算在我的代码中到处使用std :: wstring.但在处理文件和网络时,我还需要操纵UTF-8编码数据.C++ 0x是否也支持这些操作?

c++ unicode utf-8 wstring c++11

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

Python和随机键21 char max

我正在使用一个名为21 char max的api代表一个内部会话,其寿命大约为"两天".我希望这个名字不是有意义的使用某种哈希?md5生成40个字符,还有其他我可以使用的吗?

现在我使用'userid [:10]'+创建时间:ddhhmmss +随机3个字符.

谢谢,

python encryption key

7
推荐指数
1
解决办法
7112
查看次数

WORD有多少位,在不同的架构上是不变的?

机器WORD总是相同还是依赖于机器架构?WORD语境对于敏感或普遍适用的含义是什么?

assembly naming cpu-architecture data-structures

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

"删除未使用的引用"的目的是什么

我已经读过删除未使用的引用对编译器没有任何影响,因为它忽略了代码本身没有引用的程序集.

但我觉得很难相信,因为那么,删除未使用的引用的真正目的是什么?它对生成的组件的大小或其他方面没有任何明显的影响.或者这种智能行为仅限于C#编译器(csc.exe)而不是vbc.exe固有的?

如果此功能如此无用,为什么ReSharper将其作为功能提供?为什么在Visual Studio项目配置对话框中提供它?

我能想到的唯一有用的活动是在部署期间.安装程序仍会复制引用(已使用或未使用).但对于驻留在GAC中的程序集(例如,BCL程序集),这也不是问题.

.net compiler-construction reference visual-studio

12
推荐指数
4
解决办法
3927
查看次数

C#中的任意精度小数?

是否有可用于C#的任意精度十进制类?我已经看过几个任意精度整数类,但这并不完全相同.

c# math

7
推荐指数
1
解决办法
2848
查看次数

可以单个SetEvent()触发多个WaitForSingleObject()

这个:

http://msdn.microsoft.com/en-us/library/ms686915(VS.85).aspx

似乎没有暗示.

我有三个进程通过管道进行通信.进程A创建一个事件,进程B&C每个都使用WaitForSingleObject(在第二个线程中).

所以现在我们有-TWO-每个进程等待-SINGLE-事件.

进程A使用SetEvent()触发事件,进程B响应,进程C不响应.

结论:

每个WaitForSingleObject()都需要一个唯一的事件......正确吗?

c++ events winapi

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

在终端中检查重复项?

以下代码打印一长串包含哈希值和文件名的文件

md5sum *.java
Run Code Online (Sandbox Code Playgroud)

我尝试列出出现相同哈希值的行,但没有成功,这样我就可以删除相同的文件。

如何过滤和删除具有相同内容的相同文件?

shell scripting

4
推荐指数
1
解决办法
1137
查看次数

操作系统和实现独立访问键盘?

我用MSVC++做了一个FPS游戏,它在Windows上运行得很好.但现在我试图让它可移植(至少我想创建一个Linux和Windows版本),所以我决定将IDE更改为Code :: Blocks,将框架更改为wxWidgets.但似乎虚拟键码和扫描码在不同系统上是不同的.

之前我曾经历过,即使在同一个操作系统上,虚拟键码也可能不同但计算机不同(我得到了关于他们无法控制角色的bug报告(取决于numlock状态,lol,而不是笑话),这在修改后修复了代码使用扫描码而不是virtkey代码)(编辑:使用wxWidgets,numpad上的virtkey和扫描代码具有不同的值,具体取决于numlock状态,砰!)

现在使用wxWidgets,似乎wxKeyEvent :: GetRawKeyCode和之前从WM_KEYDOWN的lParam获得的代码是不同的.我还从GetRawKeyCode获得了一个完全不同的linux(ubuntu)扫描代码.

好吧,我可以通过按下所有键并查看它给出的代码来制作我自己的扫描码表,但是ubuntu在我的笔记本电脑上运行的唯一问题是,笔记本电脑没有全键盘...但我需要所有这些使控制设置工作.

所以问题是:是否有一种标准的跨平台方式来获得相同密钥的相同代码(相同位置的密钥更精确)?(至少在Windows和Linux上)

keyboard cross-platform scancodes

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

无法在本地计算机上浏览在家中托管的网站

我在IIS上主页上有一个ASP.NET网站.在我的家庭网络之外,我可以看到网站,但在网络内部,它给我一个404错误.我可以将该网站浏览为localhost.这似乎是一个DNS问题,只是不知道如何解决它.

iis dns hosting

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