Paul, I don't think it's because of the use of char[] or string type;
Because the same error still pointed to the constructor usage after I changed the type.