'static const'멤버 초기화와 관련하여 문제가 있습니다. 템플릿이있는 클래스에서 const 멤버를 정의하고 클래스 외부에서 초기화합니다. 이 클래스가 여러 .cpp 파일에 구현 된 .h 파일을 포함하면 상수가 이미 정의되어 있다고 인 LNK2005 오류 (VS2010 사용)가 발생합니다. // List.hpp template <class T> cl
가정하자 동일한 기능의 비 CONST 버전 I은 모두가 동일한 내부 로직을 갖고있는 기능 type* func (type*);
const type* func_const (const type*);
등이있다. 두 함수를 하나의 함수로 병합 할 수있는 방법이 있습니까? 여기서 const 유형이 주어진 경우 const 유형을 반환합니다. 비 const 타입이
Effective C++에서와 사용 CONST, 항목 3 /* case1 */ const std::vector<int>::iterator i // i acts like a T* const
/* case2 */ std::vector<int>::const_iterator ci // ci acts like a const T*
가 const 적용하는 방법을
반복자를 사용할 때 const 로의 암시 적 캐스팅과 같은 문제가 있습니다. 어떤 코드가 관련이 있는지 잘 모르겠습니다. (내가이 질문을 한 적이 없다면!) 그래서 나는 내 문제를 설명하기 위해 최선을 다할 것입니다. 그때 나는 오류 메시지를 제거 ((SmallObject)(*it).smallObjectFunction();로 캐스팅하는 경우, 그러나 err
내가 CONST 회원이 명시 적으로 intialized해야 들었 컴파일하지만 나를 위해 다음과 같은 컴파일되지 않은 : 당신의 천국 '이후 int main()
{
someClass obj;
return 0;
}
: class someClass
{
int const x;
};
int main()
{
retu
저는 보통 C/C++ 코드에서 C 유형 캐스팅을 사용합니다. 내 질문은, 캐스팅 형식의 "const"키워드를 추가해도 결과에 아무런 의미가없는 것입니까? 예를 들어, I가 생각할 수있는 몇 가지 시나리오 :이 일에 const my_struct *func1()
{
my_struct *my_ptr = new my_struct;
// mod
별 앞에 C++에서 수식자인 const은 포인터가 가리키는 값을 변경할 수 없다는 것을 의미하며 포인터 자체는 다른 것을 가리 키도록 만들 수 있습니다. 펑션합니다 (CONST는 제 스타 후 아니므)는 INT * 값을 수정할 수 있지만, 통과 PARAM 가리키는 정수 값 (있는 경우)을 수정하도록 허용되어서는 안된다 void justloadme(const
가능한 중복 : C# naming convention for constants? 나는 C#에서 라이브러리를 리팩토링 그리고 난 대문자 상수를 많이 발견 : INTERVAL, TIME, SECONDS.
나는 이것을 불필요한 것으로 생각하며, 개인적으로 나는 낙타의 경우로 모든 것을 선언하는 것을 선호한다. 더 나은 방법에 대한 정확한 정의가 있습니까?