C++小白求助公用字符串初始化方法

来源:互联网  时间:2016/8/31 13:11:00

关于网友提出的“ C++小白求助公用字符串初始化方法”问题疑问,本网通过在网上对“ C++小白求助公用字符串初始化方法”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: C++小白求助公用字符串初始化方法
描述:

学习C++中,很是痛苦
我想实现一个接口类,里面就放几个字符串常量,方便别的类直接调用
Java里面实现很简单,但是C++里面我就不会了 C++小白求助公用字符串初始化方法
声明如下:

#ifndef NOTIFICATIONNAME_H
#define NOTIFICATIONNAME_H
class NotificationName{
public:
static const char* rest;
static const char* writeCode;
static const char* writeArticle;
};
#endif

在cpp里面我就直接这么写,编译错误
#include "NotificationName.h"
NotificationName::rest = "wantToRest";
NotificationName::writeCode = "wantToWriteCode";
NotificationName::writeArticle = "wantToWriteArticle";

求大神帮忙指点一下小白吧
解决方案1:

对于static const常量,如果是整型的话,可以在类中直接赋值,其他的只能在类外定义了。。。。

解决方案2:

class MyTestClass
{
public:
    MyTestClass() : m_ciInt(1), m_csStr("MyStr")  // const成员变量,在ctor参数列表中初始化
    {}
public:
    const int m_ciInt;
    const String m_csStr;
    static int m_siInt;
    static String m_ssStr;
    const static int m_csiInt;
    const static String m_cssStr;
};
int MyTestClass::m_siInt = 1; // static成员变量,在外部定义
String MyTestClass::m_ssStr = "MyStr"; // static成员变量,在外部定义
const int MyTestClass::m_csiInt = 1;  // const static/static const成员变量,在外部定义
const String MyTestClass::m_cssStr = "MyStr"; // const static/static const成员变量,在外部定义

上一篇哪位大神给我调试下 auto_ptr 本来可以转移拥有权的但现在 (如下面q=p;应该输出q=42;p=NULL1的结果却不是 还有p是怎么得到42)
下一篇不包含algorithm头文件也能使用count函数
明星图片
相关文章
《 C++小白求助公用字符串初始化方法》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)