>

델파이에서는 코드 소스에서 언젠가는 한 줄에 유지하기 어려운 아주 긴 문자열을 작성해야합니다

'SELECT Email FROM Employee where NOT REGEXP_LIKE(Email, ‘[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}’, ‘i’);'

그러나 코드 소스에서 더 읽기 쉽도록 여러 행으로 분할해야합니다

'SELECT '+
  'Email '+
'FROM '+
  'Employee '+
'where '
  'NOT REGEXP_LIKE(Email, ‘[A-Z0-9._%+-][email protected][A-Z0-9.-]+\.[A-Z]{2,4}’, ‘i’);'

그러나 이것을 수행하면 (내가 이해하는 한) 런타임에 문자열을 연결하고 컴파일러는 이러한 연결을 처리하기 위해 내부적으로 여러 개의 임시 문자열을 생성합니다

성능에 영향을주지 않으면 서 델파이에서 여러 줄의 긴 문자열을 얼마나 효율적으로 분할합니까?

  • 답변 # 1

    두 번째 코드 블록에는 성능 문제가 없습니다. 컴파일러는 컴파일 타임에 연결을 수행합니다. 질문의 두 표현은 동일하게 취급됩니다. 둘 다 상수 표현입니다.

관련 자료

  • 이전 node.js - xero-Node 패키지 특정 콜백을 비동기/대기로 전환하는 방법
  • 다음 java : 비트 조작으로 뷰의 가시성을 반전하는 방법