안녕하세여 대학교2학년 프로그래밍 공부하고있는 학생입니다
#include <iostream>
#include <variant>
enum class testEnum
{
eNone = 0,
eOne = 1,
eTwo = 2
};
template<typename... T>
void testClass(testEnum nEnum, T&... args)
{
switch (nEnum)
{
case testEnum::eNone:
{
//여기 처리 어떻게 할 수 있을까요?
args[0] = 1;
args[1] = 3.3;
}
break;
case testEnum::eOne:
// eOne에 대한 처리
break;
case testEnum::eTwo:
// eTwo에 대한 처리
break;
default:
// 기타 경우에 대한 처리
break;
}
}
int main()
{
int a = 0;
float b = 0.0f;
testClass(testEnum::eNone, a, b);
std::cout << "a: " << a << std::endl; // 출력: a: 1
std::cout << "b: " << b << std::endl; // 출력: b: 3.3
return 0;
}
저렇게 출력되게하고싶은데 ㅜㅜ 방법을 모르겠어용..흑흑 알려주세요 정답을알려줘
저기 가변인자로는 몇개가 들어올지 모른다고 가정하고 enum으로 구분 해서 사용한다고 했을때..
공부는 스스로 터득해야함 정 궁금하면 msdn c++ 마이크로소프트 개발자 네트워크 공식 문서 보면서 공부해.. 그럼 수고해
args 는 프로젝트 속성에서 설정할 수 있어
가변길이 템플릿이라면 가변 인자가 제각각이라 인덱스로 접근하는 게 무리이지 않을까요? - dc App
배열처럼 인덱스로 접근하는 것은 자료형의 크기에 따라 달라지는데 만약에 하나는 double형이고 하나는 char형이라면 문제가 생기지 않을까 싶습니다 - dc App