首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

怎么用strcpy在构造函数中初始化字符串数组

2013-09-29 
如何用strcpy在构造函数中初始化字符串数组比如,我目前定义类如下class Cipher {public:Cipher(){。。。。。。。}

如何用strcpy在构造函数中初始化字符串数组
比如,我目前定义类如下
class Cipher {
public:
Cipher()
{
              。。。。。。。
}
private:
char plaintext[27];
char ciphertext[27];
};
我想吧plaintext初始化为标准大写子母表(26大写字母+一个null终止符)

如果用strcpy怎么实现呢
[解决办法]

#include <iostream>

class Cipher {
 public:
  Cipher()
      : plaintext({'a', 'b', }), ciphertext({'a', 'b', }) {
  }

 private:
  char plaintext[2];
  char ciphertext[2];
};

int main(int argc, char* argv[]) {
  Cipher cipher;
}

这个是真的初始化
[解决办法]
4L和4L以上的回复已经满足了你的要求,只不过不那么严谨。
5L说的确实更严谨了,里面有一个C++成员变量的真正初始化阶段,就是在初始化列表中的才算是初始化,在构造函数中的已经算是赋值了。但他不影响效果,只是会影响一些效率

热点排行