찾다
컴퓨터 튜토리얼컴퓨터 지식C에서 함수 오버로딩을 설명하는 방법

C에서 함수 오버로딩을 설명하는 방법

프로그램에 두 개의 함수를 정의한다고 가정해 보겠습니다. String test(String str1)와 int test1(int i)의 내용은 매우 간단한 함수입니다

문자열 테스트(String str1){

Response.Write("함수 오버로드 테스트, 이것은 문자열 함수입니다.")

"123232"를 반환합니다.

}

int 테스트(int i){

Response.Write("함수 오버로드 테스트, 이것은 정수 함수입니다.");

반품

1;

}

test("두부")와 test(888)를 호출하면 컴파일러는 오류를 보고할 뿐만 아니라 이와 같이 다른 결과도 실행합니다.

함수 오버로드는 프로그래밍 과정에서 큰 편리함을 제공합니다. 매개변수 변경에 따라 컴파일러가 다른 코드를 실행하도록 할 수 있습니다. 그리고 이것도

객체 지향 프로그래밍의 주요 기능 중 하나입니다. 저는 MS가 ASP.Net이 미래 웹 프로그래밍의 표준이 되기를 정말로 원한다고 믿습니다.

c 함수 오버로딩

초기화는 원하는 대로 변경할 수 있습니다. 전역 변수도 직접 변경할 수 있으니 주의하세요. 문자열 크기가 가장 긴지는 모르겠습니다. ASCII 코드 크기를 비교하는 것이라면 그냥 개념은 비슷합니다.

#포함

#include "string.h"

#n 3 정의

클래스 벡터

{

공개:

벡터(){}

int max(int ​​​​z[])

{

int maxNumber=z[0];

for(int i=0;i {

if (maxNumber }

최대 숫자 반환;

}

더블 맥스(더블 z[])

{

이중 maxNumber=z[0];

for(int i=0;i {

if (maxNumber }

최대 숫자 반환;

}

긴 최대(긴 z[])

{

긴 maxNumber=z[0];

for(int i=0;i {

if (maxNumber }

최대 숫자 반환;

}

float max(float z[])

{

float maxNumber=z[0];

for(int i=0;i {

if (maxNumber }

최대 숫자 반환;

}

문자* 최대(문자 z[3][10])

{

문자 최대번호[10];

strcpy(maxNumber,z[0]);

for(int i=0;i {

if(strlen(maxNumber) }

최대 숫자 반환;

}

};

void main()

{

벡터 vt;

int a1[3]={1,3,2};

더블 a2[3]={2.5,7.8,9.3};

길게3[3]={1000,5677,3456};

float a4[3]={1.5f,5.7f,3.8f};

char a5[3][10]={"나는","사랑합니다","중국"};

문자 최대벡터[10]={0};

cout cout cout cout int i=0;

strcpy(maxVector,vt.max(a5));

while(maxVector[i]!='

{

cout

}

쿠웃

}

클래스 템플릿의 함수 오버로드에 대한 C의 문제

/*

코드에서

T_counter& 연산자 =(T_counter x)

{

this->data=x.data;

반환 *이것;

}

T_counter& 연산자 +(T_counter x)

{

이->데이터+=x.data;

반환 *이것;

};

c=a+b;를 실행하면 c는 a+b의 값이고, a는 a+b의 값이기도 합니다!

*/

//코드를 다음과 같이 변경해서 사용해 보세요

#포함

네임스페이스 표준 사용;

템플릿

클래스T_카운터

{

공개:

T_counter(t a=0)

{

데이터=a;

}

T_counter& 연산자 =(T_counter x)

{

this->data=x.data;

반환 *이것;

}

T_카운터 연산자 +(T_counter x)

{

T_카운터y;

y.data=this->data+x.data;

반품하세요;

}

T_카운터 연산자 -(T_counter x)

{

T_카운터y;

y.data=this->data-x.data;

반품하세요;

}

T_counter 연산자 *(T_counter x)

{

T_카운터y;

y.data=this->data*x.data;

반품하세요;

}

친구 ostream 및 운영자{

wocareturnwoca;

}

친구 istream & 연산자 >>(istream &input,T_counter & x)

{

cin>>x.data;

반환 입력;

}

getdata()하지 마세요

{

이것을 반환->데이터;

}

비공개:

데이터가 아닙니다.

};

int 메인()

{

T_카운터 a(5.9),b(6.6),c(0);

coutc=a+b;

coutc=(a-b);

coutc=a*b;

coutcoutcin>>c;

coutsystem("일시중지");

0을 반환합니다;

}

위 내용은 C에서 함수 오버로딩을 설명하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 Excel办公网에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
Windows 10에서 작업 표시 줄 색상을 수정하는 4 가지 방법 -MinitoolWindows 10에서 작업 표시 줄 색상을 수정하는 4 가지 방법 -MinitoolMay 02, 2025 am 12:50 AM

"작업 표시 줄 색상이 변하지 않는"문제를 본 적이 있습니까? 이 문제에 대해 혼란스러워합니까? Php.cn 의이 게시물은이 문제에 중점을두고 수정하는 데 도움이되는 몇 가지 입증 된 방법을 제공합니다.

원격 데스크탑 서비스는 현재 바쁘다 - 대상 솔루션입니다원격 데스크탑 서비스는 현재 바쁘다 - 대상 솔루션입니다May 02, 2025 am 12:49 AM

Windows 서버에 연결하려고 할 때는 원격 데스크탑 서비스가 현재 바쁘다는 오류가 발생할 수 있습니다. Windows 서버 설정과 사용자 장치 가이 오류의 원인 일 수 있습니다. 원인이 무엇이든, Php.cn이 도움이 될 수 있습니다

고정 : 바이러스를 스캔 할 때 Windows가 종료됩니다고정 : 바이러스를 스캔 할 때 Windows가 종료됩니다May 02, 2025 am 12:48 AM

바이러스를 스캔 할 때 Windows가 종료됩니까? Windows Defender 전체 스캔은 PC가 종료 되나요? 이 문제가 발생하면 어떻게해야합니까? Php.cn 의이 게시물에서는 몇 가지 실현 가능한 솔루션을 배웁니다.

chatgpt에 네트워크 오류 메시지가 나타납니다. 해결하는 7 가지 방법을 시도하십시오! - 미니 툴chatgpt에 네트워크 오류 메시지가 나타납니다. 해결하는 7 가지 방법을 시도하십시오! - 미니 툴May 02, 2025 am 12:47 AM

ChatGpt 네트워크 오류는 코드를 작성하거나 AI가 긴 답변을 작성할 때 발생할 수있는 일반적인 문제입니다. 이 문제에 직면하면 어떻게해야합니까? 이 게시물에서 Php.cn이 수집 한 여러 가지 방법을 걱정하지 마십시오.

Windows 업데이트 확인 업데이트가 회색으로 연결되었습니다Windows 업데이트 확인 업데이트가 회색으로 연결되었습니다May 02, 2025 am 12:44 AM

Windows 업데이트를 얻는 한 가지 방법은 Windows 업데이트에서 업데이트 확인 버튼을 클릭하는 것입니다. 그러나 업데이트 수표 버튼이 회색으로 표시되면 문제를 해결하기 위해 무엇을 해야하는지 알고 있습니까? 이 게시물에서는 Php.cn 소프트웨어가 일부를 소개합니다

WIN에 초안을 저장하지 않는 Outlook 수정에 대한 완전한 가이드WIN에 초안을 저장하지 않는 Outlook 수정에 대한 완전한 가이드May 02, 2025 am 12:43 AM

Outlook Draft 이메일은 일반적으로 Drafts 폴더에 저장됩니다. 그러나 때로는 "초안을 저장하지 않는 전망"문제가 발생할 수도 있습니다. 이 상황에서는 전자 메일 초안을 찾고이 문제를 처리하려면 어떻게해야합니까? 이 게시물에서

iCloud 메일 로그인/가입 | iCloud Mail PC/Android에 액세스하는 방법 -MinitooliCloud 메일 로그인/가입 | iCloud Mail PC/Android에 액세스하는 방법 -MinitoolMay 02, 2025 am 12:42 AM

이 게시물은 iCloud 메일 로그인 및 가입 안내서를 제공합니다. 무료 iCloud 메일 계정을 만들어 웹 또는 모든 장치에서 이메일을 보내거나받는 데 사용합니다. Windows 10/11 또는 Android에서 iCloud 메일에 액세스하는 방법에 대한 설명도 포함되어 있습니다.

Windows 용 Windows Adk 다운로드 및 설치 [전체 버전] -MinitoolWindows 용 Windows Adk 다운로드 및 설치 [전체 버전] -MinitoolMay 02, 2025 am 12:41 AM

Windows 11/10을 프로비저닝하려고 할 때는 작업을 완료하는 데 도움이 되려면 해당 버전의 Windows ADK (Windows Assessment and Deployment Kit)가 필요합니다. Php.cn 의이 게시물은 Windows Adk를 다운로드하고 설치하는 방법을 알려줍니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구