/************************************** Demonstrates declaration of a class and definition of class methods **************************************/ #include "stdafx.h" #include // for cout using namespace std; class Cat // begin declaration of the class { public: // begin public section int GetAge(); // accessor function void SetAge (int age); // accessor function void Meow(); // general function private: // begin private section int itsAge; // member variable }; // definition of SetAge, public // accessor function // returns sets itsAge member void Cat::SetAge(int age) { // set member variable its age to // value passed in by parameter age int itsAge = age; } // definition of Meow Method // returns: void // parameters: None // action: Prints "meow" to screen void Cat::Meow() { cout << "Meow.\n"; } // create a cat, set its age, have it // meow, tell us its age, then meow again. int main() { Cat Frisky; Frisky.SetAge(5); Frisky.Meow(); cout << "Frisky is a cat who is " ; cout << Frisky.GetAge() << " years old.\n"; Frisky.Meow(); return 0; } /* Error 1>------ Build started: Project: 6.3-methodsClass, Configuration: Debug Win32 ------ 1>Compiling... 1>6.3-methodsClass.cpp 1>Linking... 1>6.3-methodsClass.obj : error LNK2019: unresolved external symbol "public: int __thiscall Cat::GetAge(void)" (?GetAge@Cat@@QAEHXZ) referenced in function _main 1>C:\Documents and Settings\Name\Desktop\Desktop\C++\6.3-methodsClass\Debug\6.3-methodsClass.exe : fatal error LNK1120: 1 unresolved externals 1>Build log was saved at "file://c:\Documents and Settings\Name\Desktop\Desktop\C++\6.3-methodsClass\Debug\BuildLog.htm" 1>6.3-methodsClass - 2 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== */