开发者

array syntax error

开发者 https://www.devze.com 2023-04-13 02:59 出处:网络
what\'s wrong with this syntax? sorry for the newbie question. source: Level::Level() { NintyDegreeDirections[4] =

what's wrong with this syntax? sorry for the newbie question.

source:

Level::Level()
{

    NintyDegreeDirections[4] =  
    { 
        (float)(2*(Math.PI)), 
        (float)(3*(Math.PI)/2), 
        (float)Math.PI, 
        (float)Math.PI/2 
    }

...rest of class

header:

//all necessary includes

class Level
{
private:

    static const float NintyDegreeDirections[4];

...rest of header

how do I have an开发者_C百科 array as a class member? I'm converting from C#


If you want to initialize your static class member in the source file, you need to do it outside of any function body. You also need to retain all of the type information in the definition. E.g.

// In level.cpp, at namespace (global) scope:
const float Level::NintyDegreeDirections[4] =  
{ 
    (float)(2*(Math.PI)), 
    (float)(3*(Math.PI)/2), 
    (float)Math.PI, 
    (float)Math.PI/2 
};

(This assumes that you have defined a Math namespace or class with an appropriate member PI. Math isn't native to C++.)

0

精彩评论

暂无评论...
验证码 换一张
取 消