6.4> 다음 클래스에 중복된 생성자를 디폴트 매개 변수를 가진 하나의 생성자로 작성하고 테스트 프로그램을 작성하라.
<코드>
#include <iostream>
using namespace std;
class MyVector{ private: int* mem; int size; public: MyVector(int n,int val); ~MyVector(){delete []mem;} //동적 배열이 할당받은 메모리를 힙에 반환 void printVector(); };
MyVector::MyVector(int n=100,int val=0){ //n실인자가 입력되지 않으면 100대입,val 실인자 없으면 0대입 mem=new int[n]; //n크기의 인트형 동적 배열 size=n; for(int i=0;i<size;i++) mem[i]=val; //동적 배열의 모든 원소를 val로 초기화해준다. } void MyVector::printVector(){ //10개씩 끊어서 출력 int moc=size/10; //몫 int namuji=size%10; //나머지 for(int j=0;j<moc;j++){ for(int i=0;i<10;i++){cout<<mem[i];} //몫에 해당하는만큼 출력 cout<<endl; } for(int k=0;k<namuji;k++) //나머지에 해당하는 만큼 출력 {cout<<mem[k];} cout<<endl; } int main(void){ MyVector m1; //사이즈 100, 원소는 0 MyVector m2(53); //사이즈 53, 원소는 0 MyVector m3(27,3); //사이즈 27, 원소는 3 m1.printVector(); m2.printVector(); m3.printVector(); return 0; } |
<결과창>
|
'컴퓨터 & 프로그래밍 & 전자공학 > C++' 카테고리의 다른 글
배열 빼기 (0) | 2017.12.25 |
---|---|
동일한 크기의 배열 (0) | 2017.12.25 |
생성자 중복 디폴트 매개 변수 (0) | 2017.12.25 |
virtual 함수 (0) | 2017.11.23 |
operator overloading (0) | 2017.11.14 |