C++/Class/Class Access
Class with setter and displayer
<source lang="cpp">
- include <iostream>
- include <string.h>
using namespace std; class movie { public:
char name[64]; char first_star[64]; char second_star[64]; void show_movie(void) { cout << "Movie name: " << name << endl; cout << "Starring: " << first_star << " and " << second_star << endl << endl; } void initialize(char *movie_name, char *first, char *second) { strcpy(name, movie_name); strcpy(first_star, first); strcpy(second_star, second); }
}; int main(void) {
movie fugitive, sleepless; fugitive.initialize("A", "B", "C"); sleepless.initialize("D", "E", "F"); cout << fugitive.name << " and " << sleepless.name << endl; cout << fugitive.first_star << endl;
}
</source>
You may change access specifications as often as you like within a class declaration
<source lang="cpp">
- include <iostream>
- include <cstring>
using namespace std; class Person {
char name[80]; // private by default
public:
void setName(char *n); // these are public void getName(char *n);
private:
double wage; // now, private again
public:
void setWage(double w); // back to public double getWage();
}; void Person::setName(char *n) {
strcpy(name, n);
} void Person::getName(char *n) {
strcpy(n, name);
} void Person::setWage(double w) {
wage = w;
} double Person::getWage() {
return wage;
} int main() {
Person ted; char name[80]; ted.setName("Ted Jones"); ted.setWage(75000); ted.getName(name); cout << name << " makes $"; cout << ted.getWage() << " per year."; return 0;
}
</source>