Overclock.net › Forums › Software, Programming and Coding › Coding and Programming › Learning C++ without getting bored.
New Posts  All Forums:Forum Nav:

Learning C++ without getting bored.

post #1 of 14
Thread Starter 
I've tried to learn C++ and Java several times. I want to learn it but I want to do something cool while I'm doing it. All the guides and books I've tried to follow just throw a bunch of definitions at you, they don't show any use for different functions, etc.

My question: Are there any guides/books that teach you c++ in the process of making a program or at least something neat/useful? I'm a hands on type of person so I learn best while I'm making something.

Thanks.
Help
(19 items)
 
  
CPUMotherboardGraphicsRAM
3770k ASRock Z77 Extreme4 ASUS ENGTX570 2DI 16GB 2x8GB Crucial Tactical  
Hard DriveHard DriveHard DriveHard Drive
WD10EZEX Crucial M4 128GB Hitachi 1TB Samsung 830 
Hard DriveCoolingOSMonitor
WD10EALS 2x88cfm yate loons on Megahalem Win7 Ult x64 ASUS VE228H 
KeyboardPowerCaseMouse
G15 v1 Toughpower XT 775W Fractal Arc Midi CM Storm Spawn/G400 
Mouse PadAudioAudio
QCK+ Asus Xonar DG Audio Technica M50S 
  hide details  
Reply
Help
(19 items)
 
  
CPUMotherboardGraphicsRAM
3770k ASRock Z77 Extreme4 ASUS ENGTX570 2DI 16GB 2x8GB Crucial Tactical  
Hard DriveHard DriveHard DriveHard Drive
WD10EZEX Crucial M4 128GB Hitachi 1TB Samsung 830 
Hard DriveCoolingOSMonitor
WD10EALS 2x88cfm yate loons on Megahalem Win7 Ult x64 ASUS VE228H 
KeyboardPowerCaseMouse
G15 v1 Toughpower XT 775W Fractal Arc Midi CM Storm Spawn/G400 
Mouse PadAudioAudio
QCK+ Asus Xonar DG Audio Technica M50S 
  hide details  
Reply
post #2 of 14
Java requires way too many lines of code for it to do anything interesting. My advice is to take a course at your local college.
My System
(13 items)
 
Ivy Bridge
(10 items)
 
 
CPUMotherboardGraphicsRAM
C2D E6600 @ 3.71ghz | q6600 @ 3.8ghz P5N-E Sli | P5Q XFX HD5770 | HD5850 6gb G.Skill (900mhz) | 4gb Patriot (1000mhz) 
Hard DriveOSMonitorKeyboard
750gb Caviar Black | 2x120gb Raid 0 Windows 7 64bit Home 2x Acer H233H | Acer P244W Microsoft x4 
PowerCaseMouseMouse Pad
Rocketfish 550w x2 Thermaltake V3 | Haf 912 Razer Abyssus Steel Series 
CPUMotherboardGraphicsRAM
i7-3770k Asus Maximus V Gene Sapphire HD6950 unlocked to HD6970 16gb RipJawsX 
Hard DriveOptical DriveCoolingOS
Crucial 1TB Western Digital Green Sata III Corsair H80 Windows 7 
PowerCase
Corsair HX650 CM Storm Enforcer 
  hide details  
Reply
My System
(13 items)
 
Ivy Bridge
(10 items)
 
 
CPUMotherboardGraphicsRAM
C2D E6600 @ 3.71ghz | q6600 @ 3.8ghz P5N-E Sli | P5Q XFX HD5770 | HD5850 6gb G.Skill (900mhz) | 4gb Patriot (1000mhz) 
Hard DriveOSMonitorKeyboard
750gb Caviar Black | 2x120gb Raid 0 Windows 7 64bit Home 2x Acer H233H | Acer P244W Microsoft x4 
PowerCaseMouseMouse Pad
Rocketfish 550w x2 Thermaltake V3 | Haf 912 Razer Abyssus Steel Series 
CPUMotherboardGraphicsRAM
i7-3770k Asus Maximus V Gene Sapphire HD6950 unlocked to HD6970 16gb RipJawsX 
Hard DriveOptical DriveCoolingOS
Crucial 1TB Western Digital Green Sata III Corsair H80 Windows 7 
PowerCase
Corsair HX650 CM Storm Enforcer 
  hide details  
Reply
post #3 of 14
Not really, all these definitions are required to learn how to do something neat. These concepts that they are trying to teach you are very important, once you grasped the concept of OOP, inheritance, and polymorphism you should be good to go to make useful programs. Its worth learning all these concepts as they make your life so much easier when you are actually trying to develop complex programs.
baby cakes
(13 items)
 
Macbook 4,1
(13 items)
 
 
CPUMotherboardGraphicsRAM
i7 930 [4.01Ghz vCore 1.28125 HT on] GA-X58A-UD3R ZOTAC GTX 460 1GB SLI [840/1680/1900 @stock volts] CORSAIR XMS3 6GB (3 x 2GB) 1600Mhz 
Hard DriveOptical DriveOSMonitor
C300 64GB SATA III, 2x F3 1TB 7200rpm RAID 0 Sony Optiarc 24X DVD/CD Ubuntu 14.04 22" Dell SP2009W 1680x1050 
PowerCase
CORSAIR HX 750W Cooler Master HAF 922 
CPUMotherboardGraphicsRAM
Core 2 Duo 2.4Ghz Penryn T8300 Some logical board GMA X3100 4GB (2x2GB) DDR2 667Mhz 
Hard DriveOptical DriveOSMonitor
Hitachi 160 GB 5400 RPM SATA II Combo drive OSX 10.6.4 (Snow leopard) 13.3" 1280x800 TFT 
PowerCase
Dying battery White macbook case 
  hide details  
Reply
baby cakes
(13 items)
 
Macbook 4,1
(13 items)
 
 
CPUMotherboardGraphicsRAM
i7 930 [4.01Ghz vCore 1.28125 HT on] GA-X58A-UD3R ZOTAC GTX 460 1GB SLI [840/1680/1900 @stock volts] CORSAIR XMS3 6GB (3 x 2GB) 1600Mhz 
Hard DriveOptical DriveOSMonitor
C300 64GB SATA III, 2x F3 1TB 7200rpm RAID 0 Sony Optiarc 24X DVD/CD Ubuntu 14.04 22" Dell SP2009W 1680x1050 
PowerCase
CORSAIR HX 750W Cooler Master HAF 922 
CPUMotherboardGraphicsRAM
Core 2 Duo 2.4Ghz Penryn T8300 Some logical board GMA X3100 4GB (2x2GB) DDR2 667Mhz 
Hard DriveOptical DriveOSMonitor
Hitachi 160 GB 5400 RPM SATA II Combo drive OSX 10.6.4 (Snow leopard) 13.3" 1280x800 TFT 
PowerCase
Dying battery White macbook case 
  hide details  
Reply
post #4 of 14
Would you move to Spain and complain that you cant order food anywhere because you don't know any Spanish?

Kind of the same deal, you cant put a program together if you don't know how to use the language fundamentals.

Sure you can download visual studio, or some other IDE and drag and drop some buttons and google up some code to do some basic things. However if you dont learn the basics, and more importantly understand what they are doing, you will never grasp the harder concepts.
My System
(13 items)
 
  
CPUMotherboardGraphicsRAM
I5 760 GA-H55N GTX 470 PNY Optima 8GB 
Hard DriveMonitorPowerCase
Spinpoint F4 LG227WTG sg07 PSU Sugo sg07 
Mouse
CM Sentinel 
  hide details  
Reply
My System
(13 items)
 
  
CPUMotherboardGraphicsRAM
I5 760 GA-H55N GTX 470 PNY Optima 8GB 
Hard DriveMonitorPowerCase
Spinpoint F4 LG227WTG sg07 PSU Sugo sg07 
Mouse
CM Sentinel 
  hide details  
Reply
post #5 of 14
Quote:
Originally Posted by hellfire72 View Post
Java requires way too many lines of code for it to do anything interesting. My advice is to take a course at your local college.
Not with GUI
post #6 of 14
If it's your first language, I would recommend learning LUA and, if you play WoW or would consider playing a trial account for this, practice by writing addons. Having some basic experience should make it easier to get into C++ and other more powerful languages, but as has been said, to program effectively you need to understand what is going on.
post #7 of 14
I learned basic C++ by writing code for embedded electronics and robotics as well as a text based RPG. I just read the short tutorial on Cplusplus.com and then just got started while looking up how to do things as I find out I need them. Leading a high school FRC team while writing all the code for the robot helped as well.

I constantly try to think of ways to apply my programming skills, such as writing a simulator for a science project and writing a sound FX controller for school plays/assembly's.
X-Caliber
(13 items)
 
  
CPUMotherboardGraphicsRAM
Intel Core 2 Quad Q8300 @3.0 Ghz Gigabyte EP43 UD3L ATI Radeon HD3850 512MB 800/950 4x1 GB 800 mhz DDR2 (Dual Channel) 
Hard DriveOptical DriveOSMonitor
160 Hitachi HDD LG Super-Multi Drive with SecurDisc Windows 7 - Ultimate (x86) Samsung SyncMaster 2043SWX 20" 1600x900 
KeyboardPowerCaseMouse
Logitech G15 Gaming Keyboard rev. 2 460 watt Coolermaster Coolermaster Elite Razer Deathadder 
Mouse Pad
Steelseries QcK 
  hide details  
Reply
X-Caliber
(13 items)
 
  
CPUMotherboardGraphicsRAM
Intel Core 2 Quad Q8300 @3.0 Ghz Gigabyte EP43 UD3L ATI Radeon HD3850 512MB 800/950 4x1 GB 800 mhz DDR2 (Dual Channel) 
Hard DriveOptical DriveOSMonitor
160 Hitachi HDD LG Super-Multi Drive with SecurDisc Windows 7 - Ultimate (x86) Samsung SyncMaster 2043SWX 20" 1600x900 
KeyboardPowerCaseMouse
Logitech G15 Gaming Keyboard rev. 2 460 watt Coolermaster Coolermaster Elite Razer Deathadder 
Mouse Pad
Steelseries QcK 
  hide details  
Reply
post #8 of 14
If you're bored then it's not engaging enough and you truly aren't interested to begin with.
Waiting on X399
(13 items)
 
  
CPUMotherboardGraphicsRAM
AMD Phenom II B57 @ X4 3.9 Gigabyte 790FXTA-UD5 Sapphire Radeon 290 8 GB G.Skill 2133 
Hard DriveCoolingOSKeyboard
250 GB 840 EVO Noctua NH-D14 Windows 10 Logitech K350 
PowerCaseMouseMouse Pad
Seasonic x750 Corsair 600T Logitech G100s Razer Goliathus Speed 
Audio
Plantronics Gamecom 788 
  hide details  
Reply
Waiting on X399
(13 items)
 
  
CPUMotherboardGraphicsRAM
AMD Phenom II B57 @ X4 3.9 Gigabyte 790FXTA-UD5 Sapphire Radeon 290 8 GB G.Skill 2133 
Hard DriveCoolingOSKeyboard
250 GB 840 EVO Noctua NH-D14 Windows 10 Logitech K350 
PowerCaseMouseMouse Pad
Seasonic x750 Corsair 600T Logitech G100s Razer Goliathus Speed 
Audio
Plantronics Gamecom 788 
  hide details  
Reply
post #9 of 14
Quote:
Originally Posted by beers View Post
If you're bored then it's not engaging enough and you truly aren't interested to begin with.
I agree, When I was learning c++ at my school I never had a moment where I wasn't enjoying myself. I really enjoyed all the extra information that my book had. try reading the first 3 chapters of an introductory book and then start making things.

The first project i did was to take hotfile links and append some text to it so i could post it to a forum.(i use that for my media server,Who needs to leave a pc on, Just upload it). The next project I did was to store all my cd keys in one place, a sort of library of pc games(final project for a class). remember at the beginning be selfish, make applications that only you will use, thats what i did. Also try to make the same project in multiple languages, start with your strongest first and go from there. It will really link all the knowledge together.

Also remember, practice, practice and do some more practicing. Learning c++ is similar to learning a new spoken language, just easier, You have to learn sentence structure and grammar. Its easy once you dive in, Or its not!
Valery
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 2500k GA-P67A-UD4-B3 Radeon 7970 Reference G. Skill Sniper 
Hard DriveOptical DriveOSMonitor
Corsair NOVA SSD 64gb + 500gb Storage + 1TB Storag HP DVD burner Windows 7 64bit 37" 1080p60hz 
KeyboardPowerCaseMouse
Razer Blackwidow Ultimate Rosewill Lightning 1000W Single Rail LianLi PC-K58 Razer Spectre 
Mouse Pad
Razer Goliathus Speed 
  hide details  
Reply
Valery
(13 items)
 
  
CPUMotherboardGraphicsRAM
i5 2500k GA-P67A-UD4-B3 Radeon 7970 Reference G. Skill Sniper 
Hard DriveOptical DriveOSMonitor
Corsair NOVA SSD 64gb + 500gb Storage + 1TB Storag HP DVD burner Windows 7 64bit 37" 1080p60hz 
KeyboardPowerCaseMouse
Razer Blackwidow Ultimate Rosewill Lightning 1000W Single Rail LianLi PC-K58 Razer Spectre 
Mouse Pad
Razer Goliathus Speed 
  hide details  
Reply
post #10 of 14
Quote:
Originally Posted by donkru View Post
I agree, When I was learning c++ at my school I never had a moment where I wasn't enjoying myself. I really enjoyed all the extra information that my book had. try reading the first 3 chapters of an introductory book and then start making things.

The first project i did was to take hotfile links and append some text to it so i could post it to a forum.(i use that for my media server,Who needs to leave a pc on, Just upload it). The next project I did was to store all my cd keys in one place, a sort of library of pc games(final project for a class). remember at the beginning be selfish, make applications that only you will use, thats what i did. Also try to make the same project in multiple languages, start with your strongest first and go from there. It will really link all the knowledge together.

Also remember, practice, practice and do some more practicing. Learning c++ is similar to learning a new spoken language, just easier, You have to learn sentence structure and grammar. Its easy once you dive in, Or its not!
This. It works for me

Good luck, OP
    
CPUMotherboardGraphicsRAM
Intel® Core™ i5-4590 Processor  Asus Maximus VII Ranger Z97 MSI GTX 970 4G Corsair Vengeance® Pro Series - 8GB (2 x 4GB) D... 
Hard DriveOptical DriveCoolingOS
Seagate 250GB SATA drive 250GB SSD Corsair H105 Hydro Series Extreme Performance L... Windows 10 Pro x64 
OSMonitorPowerCase
Ubuntu 16.04 Samsung 2232GW Super Flower SF-750P14XE(HX) Golden Green HX 75... Coolermaster CM690III 
Mouse Pad
Steelseries mousepad 
  hide details  
Reply
    
CPUMotherboardGraphicsRAM
Intel® Core™ i5-4590 Processor  Asus Maximus VII Ranger Z97 MSI GTX 970 4G Corsair Vengeance® Pro Series - 8GB (2 x 4GB) D... 
Hard DriveOptical DriveCoolingOS
Seagate 250GB SATA drive 250GB SSD Corsair H105 Hydro Series Extreme Performance L... Windows 10 Pro x64 
OSMonitorPowerCase
Ubuntu 16.04 Samsung 2232GW Super Flower SF-750P14XE(HX) Golden Green HX 75... Coolermaster CM690III 
Mouse Pad
Steelseries mousepad 
  hide details  
Reply
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Coding and Programming
Overclock.net › Forums › Software, Programming and Coding › Coding and Programming › Learning C++ without getting bored.