1

我从我的 ofApp.cpp(又名 testApp.cpp)的这个实现开始:

#include "ofApp.h"

const ofColor bgColor(33, 33, 33);

void ofApp::setup() {
  ofBackground(bgColor);
}

为此,在 ofApp.h(又名 testApp.h)中:

#pragma once
#include "ofMain.h"

class ofApp : public ofBaseApp {

  public:
    ofApp() : bgColor(ofColor(33, 33, 33)) {};
    void setup();
    // ...
    void gotMessage(ofMessage msg);

    private:
    const ofColor bgColor;

};

我只是将全局声明bgColor从 ofApp.cpp 移到了 ofApp.h 中,并添加了一个带有初始化列表的构造函数来初始化bgColor

后者是做这种事情的“正确方法”吗?(我很难在 C++ 实践与在 ofApp.cpp 顶部声明全局变量的“OF 风格”之间划清界限。

在 ofApp.h 中声明成员并使用初始化列表,而不是在 testApp.cpp 顶部声明全局变量“更好”吗?

4

1 回答 1

0

简而言之,后者是“正道”。关于 OF 论坛的讨论在这里

于 2012-05-04T12:39:23.773 回答