user42808: I am using a led strip WS2812b, an ESP8266 (NodeMCU 1.0) and a gesture sensor APDS9960.
I want that when I move my hand from left to right and from right to left I change the colors of the strip of leds, previously saved in an array of strings:
const char * colors [11] = {"CRGB :: White", 
"CRGB :: WhiteSmoke", 
"CRGB :: CadetBlue", 
"CRGB :: SteelBlue", 
"CRGB :: Teal", 
"CRGB :: SlateGray" , 
"CRGB :: MediumPurple", 
"CRGB :: Purple", 
"CRGB :: PapayaWhip", 
"CRGB :: LightPink", 
"CRGB :: Crimson"};

But when I'm going to turn on the colors using the functions of the FastLed library in this way:
for (int i = 0; i <NUM_LEDS; i = i + 1) {
       leds [i] = colors [2];
       FastLED.show ();
       delay (10);}

All I get is this error:

invalid conversion from 'const char *' to 'uint32_t {aka unsigned
  int}' [-fpermissive]

I guess the problem is me when declaring the array, could someone help me?

user4143: You don't want an array of strings containing the (badly formatted) names of variables. Instead you want an array of 32-bit integers containing the values held within those variables.
const uint32_t colors[] = {
    CRGB::White, 
    CRGB::WhiteSmoke, 
    CRGB::CadetBlue, 
    CRGB::SteelBlue, 
    CRGB::Teal, 
    CRGB::SlateGray, 
    CRGB::MediumPurple, 
    CRGB::Purple, 
    CRGB::PapayaWhip, 
    CRGB::LightPink, 
    CRGB::Crimson
};

Since colours are just numbers, in the (hexadecimal) form of 0xRRGGBB you just store them as 32-bit unsigned integers.  The names you have there are just such (constant) variables used for easy reference (CRGB::White is 0xFFFFFF).

42808: <p>I am using a led strip <strong>WS2812b</strong>, an <strong>ESP8266 (NodeMCU 1.0)</strong> and a gesture sensor <strong>APDS9960</strong>.
I want that when I move my hand from <em>left to right</em> and from <em>right to left</em> I change the colors of the strip of leds, previously saved in an array of strings:</p>

<pre><code>const char * colors [11] = {"CRGB :: White", 
"CRGB :: WhiteSmoke", 
"CRGB :: CadetBlue", 
"CRGB :: SteelBlue", 
"CRGB :: Teal", 
"CRGB :: SlateGray" , 
"CRGB :: MediumPurple", 
"CRGB :: Purple", 
"CRGB :: PapayaWhip", 
"CRGB :: LightPink", 
"CRGB :: Crimson"};
</code></pre>

<p>But when I'm going to turn on the colors using the functions of the <strong><a href="https://github.com/FastLED/FastLED" rel="nofollow noreferrer">FastLed</a></strong> library in this way:</p>

<pre><code>for (int i = 0; i &lt;NUM_LEDS; i = i + 1) {
       leds [i] = colors [2];
       FastLED.show ();
       delay (10);}
</code></pre>

<p>All I get is this error:</p>

<blockquote>
  <p>invalid conversion from 'const char *' to 'uint32_t {aka unsigned
  int}' [-fpermissive]</p>
</blockquote>

<p>I guess the problem is <strong>me</strong> when declaring the <em>array</em>, could someone help me?</p>
 4143: <p>You don't want an array of strings containing the (badly formatted) names of variables. Instead you want an array of 32-bit integers containing the values held within those variables.</p>

<pre><code>const uint32_t colors[] = {
    CRGB::White, 
    CRGB::WhiteSmoke, 
    CRGB::CadetBlue, 
    CRGB::SteelBlue, 
    CRGB::Teal, 
    CRGB::SlateGray, 
    CRGB::MediumPurple, 
    CRGB::Purple, 
    CRGB::PapayaWhip, 
    CRGB::LightPink, 
    CRGB::Crimson
};
</code></pre>

<p>Since colours are just numbers, in the (hexadecimal) form of <code>0xRRGGBB</code> you just store them as 32-bit unsigned integers.  The names you have there are just such (constant) variables used for easy reference (<code>CRGB::White</code> is <code>0xFFFFFF</code>).</p>
