【发布时间】:2009-09-05 02:56:33
【问题描述】:
我想我在这件事上的理论背景中错过了一些东西。我知道有类似的帖子,但我还是不明白。
我有这样的代码:
void somefunc1(Word &Key)
{
somefunc2(Key);
}
void somefunc2(char &char1)
{
return;
}
编译器在这里生成一个错误:
somefunc2(Key);
[BCC32 错误] Unit1.cpp(830):E2357 引用初始化为“无符号短”,需要“字符”类型的左值
我发现这是因为 ANSI 2003 关于 C++ 处理临时和引用的规定,但我仍然不明白这里有什么问题。
当我进行 c 风格转换时:
somefunc2( *(char*)&Key )
它解决了一个问题。
谁能提示我哪里错了,为什么错了?
【问题讨论】:
-
请提供完整的c++代码。您提供的代码应该声明我采用的函数,但错过了返回类型。我认为,一个完整的、应该可以工作的 C++ sn-p 会更好地帮助你
-
对不起,星期五晚上。我会在一秒钟内修复。
-
什么是
Word?是整数类型还是对象?