--- id: cpp-function-param title: "C++ Function Parameters" category: "Programming_Language" status: "draft" verification_status: "conceptual" canonical_id: "" aliases: ["parameters vs arguments", "C++ 함수 매개변수"] duplicate_of: "" source_trust_level: "B" confidence_score: 0.83 created_at: 2026-07-04 updated_at: 2026-07-04 review_reason: "" merge_history: [] tags: ["cpp", "programming-language", "w3schools", "functions", "parameters"] raw_sources: ["https://www.w3schools.com/cpp/cpp_function_param.asp"] applied_in: [] github_commit: "" --- # [[CPP Function Parameters]] ## 🎯 한 줄 통찰 (One-line insight) Passing a `string` parameter directly (`myFunction(string fname)`) requires NO special array-declaration syntax the way C would (where a string parameter needs `char name[]`) — confirming that C++'s genuine string type flows naturally into function signatures too, letting a function accept and concatenate names as simply as it would numbers. [S1] ## 🧠 핵심 개념 (Core concepts) - **Parameter vs. argument** — parameter is the variable name in the signature; argument is the actual value passed at the call site. [S1] - **String parameters work directly** — `void myFunction(string fname)`, no array declaration needed unlike C. [S1] - **Reused function logic across calls** — the same function body runs once per call with different arguments. [S1] ## 📖 세부 내용 (Details) - A string parameter reused across three calls: `void myFunction(string fname) { cout << fname << " Refsnes\n"; } myFunction("Liam"); myFunction("Jenny"); myFunction("Anja");` — each call appends " Refsnes" to a different name. [S1] ## ⚖️ 모순 및 업데이트 (Contradictions & updates) - **string 매개변수에 배열 문법이 필요 없음**: C에서는 문자열 매개변수를 char name[]으로 선언해야 했지만, C++에서는 string fname처럼 직접 선언 가능하다는 점이 확인됨. [S1] ## 🛠️ 적용 사례 (Applied in summary) 현재 발견된 실제 적용 사례가 없습니다 — 이름 뒤에 성(Refsnes)을 자동으로 붙여 출력하는 예제가 문자열 매개변수 활용의 대표 사례다. [S1] ## 💻 코드 패턴 (Code patterns) A string parameter used directly, no array syntax needed (C++): ```cpp void myFunction(string fname) { cout << fname << " Refsnes\n"; } int main() { myFunction("Liam"); myFunction("Jenny"); return 0; } ``` ## ✅ 검증 상태 및 신뢰도 - **상태:** draft - **검증 단계:** conceptual - **출처 신뢰도:** B (W3Schools — widely used educational reference, not a primary standards body) - **신뢰 점수:** 0.83 - **중복 검사 결과:** 신규 생성 (New discovery) ## 🔗 지식 그래프 (Knowledge Graph) - **상위/루트:** [[C++ Tutorial]] - **관련 개념:** [[CPP Functions]], [[CPP Function Default]], [[C Functions Parameters]] - **참조 맥락:** 함수 매개변수 — 기본 매개변수(Function Default) 챕터로 이어짐. ## 📚 출처 (Sources) - [S1] W3Schools — C++ Function Parameters — https://www.w3schools.com/cpp/cpp_function_param.asp ## 📝 변경 이력 (Change history) - 2026-07-04: Initial draft synthesized from the W3Schools "C++ Function Parameters" page (Astra wiki-curation, P-Reinforce v3.1 format).