Visual Studio에서 생성 한 #define
이라는 묶음이 있는데 그 값은 제어 할 수 없습니다. 그들은 내가이 #define
모두를 캡슐화하는 지역 (private
및 const
) 구조를하고 싶은와 내가 작업하고있는 현재의 클래스에서 예컨대#define을 그룹화하는 가장 좋은 방법
CFG_FILT0
CFG_FILT1
CFG_FILT2
CFG_DELTA0
CFG_DELTA1
CFG_DELTA2
...
, 3 그룹으로 짝. 그런 다음이 클래스의 일부 함수는 이지만 3의 앞에서 설명한 그룹에서만이 값을 읽어야합니다.
for (int idx = 0; chIdx < 3; idx++)
{
GetItem(myStruct[idx].filt)
GetItem(myStruct[idx].delta)
...
}
가독성과 메모리 사용의 측면에서 이러한 구조를 정의하는 가장 좋은 방법은 무엇입니까 다음 potentiall 구조 (myStruct
)이 같은 허용해야 하는가? 차라리 각 그룹에 대해 하나 하나 명의 구조가 아닌 것
주 3 #define
(예를 들어, 위의 예에서 myStructFilt
, myStructDelta
)
"각 그룹 3 개가 아닌 하나의 구조체를 갖고 싶습니다."그럼 왜 3 개 항목의 배열을 포함하는 구조체를 만들지 않습니까? – Lundin
* 많은 * 특정 사례가 없으면 가장 유용한 목표가 무엇인지, 어떻게 도달 할 수 있는지 추측 할 수 있습니다. –
잠재적 인'GetItem()'의 모든 사용법에 대한 색인의 값은 컴파일시에 알려져 있습니까? 나는. 그것은'GetItem (1), GetItem (10)'처럼 보이거나 변수가 될 것입니까? – Sergio