如何从班级中打印出这个字符串?

时间:2017-07-21 18:30:34

标签: c++

我想知道如何制作它,以便我可以从我的班级打印字符串变量。我还想知道我是否正在使用正确的方法写出我的数组。

#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;

class ColorPicker {
public:

        string Color[7][10] = { "red" , "orange", "yellow", "green", "blue", "indigo", "violet" };

};

int main()
{
    cout << ColorPicker  << endl;
   system("pause"); 
    return 0;
}

2 个答案:

答案 0 :(得分:1)

您可以使用operator-overloadingfriend function

此外,您还需要创建ColorPicker类型的对象,因为Color是实例变量。

注意:由于Color属于string类型,因此请将其保留为1D数组。

以下是工作代码。您可以看到它正常工作here

#include <iostream>
#include <string>
using namespace std;

class ColorPicker {
public:

        string Color[7] = { "red" , "orange", "yellow", "green", "blue", "indigo", "violet" };

        friend  ostream& operator << (ostream& out, const ColorPicker& ob)
        {
            for(int i=0; i<7;i++)
            {
                out<< (ob.Color[i])<<" | ";
            }
            return out;
        }

};

int main()
{
    ColorPicker ob;
    cout <<ob<<endl;
    system("pause"); 
    return 0;
}

答案 1 :(得分:0)

当您使用String时,它可以定义为 string Color [7] = {&#34; red&#34; ,&#34; orange&#34;,&#34; yellow&#34;,&#34; green&#34;,&#34; blue&#34;,&#34; indigo&#34;,&#34;紫光和#34;};

单个字符串定义为:string c =&#34; red&#34; ,用c ++。

对于打印,您需要为类创建一个对象,例如&#34; ColorPicker c&#34;在主要。 制作任何在课堂上显示(显示)字符串的功能。 从主要通过为该类制作的对象调用功能显示。 例如。 C.DISPLAY();