【发布时间】:2011-08-19 06:26:21
【问题描述】:
在编译以下代码时,我收到错误“字符串常量之前预期的 unqualified-id”
In file "Notification_Constants.h"
namespace NOTIFICATION_CONSTANTS
{
#define SERVICE_EMAIL "service@company.com"
}
在文件 SendEmail.cpp 中
#include "Notification_Constants.h"
void UserPreferences::get_senders_email(String &_email)
{
_email = NOTIFICATION_CONSTANTS::SERVICE_EMAIL;
}
如果我像下面这样分配它可以正常工作,编译错误的原因是什么。
_email = SERVICE_EMAIL;
有一个类似的question,但没有提到原因。
带有相关方法的字符串类声明
class String
{
public:
String();
String(const String& src);
String(const char *new_str);
String& operator=(const String& src);
String& operator=(const char *new_str);
};
【问题讨论】:
-
SERVICE_EMAIL 字符串用双引号括起来,是复制粘贴错误
-
我们没有足够的信息来正确识别问题。请至少提供有关您的
String类型的更多信息。 -
我添加了引号,以免其他人感到困惑。
-
@Lstor 我已经用相关方法在类 String 中声明方法更新了问题
-
你在哪一行得到错误?还有其他错误吗?根据您目前提供的信息,应该没有错误。
标签: c++ string c-preprocessor