C++ data member initializer is not allowed

Posted by user1435915 on Stack Overflow See other posts from Stack Overflow or by user1435915
Published on 2012-06-07T16:33:29Z Indexed on 2012/06/07 16:40 UTC
Read the original article Hit count: 252

Filed under:
|

I totally new to C++ so bear with me. I want to make a class with a static array, and access to this array from the main. Here is what i want to do in C#.

   namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Class a = new Class();
                Console.WriteLine(a.arr[1]);

            }
        }
    }

    =====================

    namespace ConsoleApplication1
    {
        class Class
        {       
            public static string[] s_strHands = new string[]{"one","two","three"};
        }
    }

Here is what i have tried:

// justfoolin.cpp : Defines the entry point for the console application.
//

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

class Class {

  public:
      static string arr[3] = {"one", "two", "three"};
};


int _tmain(int argc, _TCHAR* argv[])
{
    Class x;
    cout << x.arr[2] << endl;
    return 0;
}

But i got: IntelliSense: data member initializer is not allowed

© Stack Overflow or respective owner

Related posts about c++

Related posts about arrays