Public Group

# Updating the For Beginners forum FAQ

This topic is 4801 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

##### Share on other sites
Not going to go into too much detail (sorry, tendinitis atm) but a couple of topics that spring to mind:

1. Which do I use, C++ or C# (or any a vs b topics)?
2. Why are pointers useful?
3. Where can I get a free compiler/3D modeling package/any other piece of game-related software?

Maybe you could compile different language FAQs for the most common languages used (perhaps even APIs as well, but it might be a lot of work). Could always take a look at existing language FAQs and take the best questions from them, though.

Also, might I suggest adding the Google Directory into the FAQ? It's a hugely under-used resource from what I've seen. It's often incredibly useful for narrowing searches or even finding related sites more easily. I also think some resources aimed at maths beginners would be quite useful, too.

Depends really. How much would you like to cover in the FAQ?

##### Share on other sites
Questions (as is usual for a FAQ, or any information presented in Q&A format, these are somewhat leading and not necessarily realistic ;) ):

(General)
- Why would I choose language X over Y (general discussion)?
- HOW DO I CODED PROGRAM? (kidding!)
- Why would I want to practice "encapsulation" or "data hiding"? Is OOP the only way to accomplish these goals?
- How can I organize my source code within a file into functions, and avoid errors? What is the use of functions anyway, and how can I think about them logically and design them properly? (I think this description is general enough to cover less commonly referred-to languages like Lisp, but perhaps it can be improved upon...)
- What's wrong with copying and pasting the same bit of code several times, anyway?

(C++ - specific)
- What exactly is the relationship between C and C++? If I already know C, how can it help me learning C++? How can it hinder me?
- What is the C++ standard library and what can it do for me? Should I be concerned about efficiency?
- How do these things in the standard library work, anyway?
- How should I choose from among standard library containers? How can I protect myself from making major changes later if I decide to switch the container type?
- Why can't I write "foo" + "bar"? How can I elegantly make something like this work?
- OK, so what can the standard library design teach me about encapsulation, data hiding etc.?
- What are constructors and destructors? Why should I use them? When will I need them?
- What is this funky thing I have seen in constructors with a colon and a list of stuff before the open brace?
- What is a "linker error"? What is the linker, and what does it have to do with the compiler? Similarly, what is the preprocessor? What exactly does a #define, #ifdef, etc. statement do?
- How can I organize my source code into smaller files, and avoid linker errors?
- What does "deprecated" mean? (really - the word itself is probably the sticking point on such error messages, and apparently noone has heard of a dictionary these days)
- What is a namespace? What are my options for dealing with things that are in namespaces? What are the trade-offs of each method?
- How can I reliably and elegantly read in (a) a line of text, not knowing anything about its length; (b) a numeric value (and in this case, what can be done about garbage input?) from a (i) file, (ii) console input, or (iii) existing string?
- How can I keep a console window open at the end of my program? What are the trade-offs of each method? What if I want to display a message from within a destructor (as a debugging technique) and such destructors fire at the end of the program?
- How can I (insert description here of task that interprets the console as a grid of symbols, rather than simply an output character stream)? How about colours and/or varying fonts/emphasis (bold, italic etc.)?
- How can I (insert description here of any graphical task, such that the console can't render it at all)? What are the fundamental difficulties of graphics programming, and what should I do to prepare myself for a project like this?

##### Share on other sites
well I have a list not sure they will all fall in this faq but it really help if I got them all answered. Just the ones I can think of for now.

Make Objects Stay on map and not fallow the world camera(for iso tile game)

Path Finding(methods and to implment them in a simple program)

player highlights when selected (2d directdraw and later 3d)

Play mp3's in game(with a free api that you can sell your game)

Play cut scenes

Able to interact with in Game Items

make a simple map editor

make make height map for iso

a way to convert functions and structs to classes

##### Share on other sites
-(C/C++)What is the difference between "*" and "&", as in:
float f(float &a, float &b), and float f(float *a, float *b)

##### Share on other sites
- Some pointers to Kylotan's free software list would be good. Perhaps a link to the DevMaster engine database too.
- There's often some questions about function pointers/functors - a link to function-pointer.org would be good
- String handling seems to be a common subject
- A link to Washu's journal can be useful

##### Share on other sites
After searching though all the pages of posts I've had on this forum and the general forum, here's my list. I'm sure more will come up [smile]

* How do I convert a number to a string?
* How do I convert a string to a number?
* How do I use a std::string with functions that require a const char* and char* parameter.
* I am including the header file <string>, and I am using the string class, but the code doesn't compile? (namespace resolution, having the std:: topics)
* How do I alphabatize characters in a string. (Best post evar!)

* How do I use unique() with vectors? (answered only once, but still a good question to have due to people not knowing that it's possible to do)

* What's the best way to optimize *this* or *that*.
* How do I make my code faster?

* Do I really need to use header files and implementation files?

* Where do I begin?
* What is programming?
* What next? (General)
* Where to go from here (API specific)

* How do I not make my console program quit when it is done?

* How do I get user input?

* How do I allocate/deallocate memory for a <datatype>** array?

* What's a dll and how do I make one?
* Should I put all my code in a dll?
* What's a static library and how do I make one?

* How do I fix *this* linker error?
* What library do I need to link in to make *this* work?

* How do I write data to a text file?
* How do I write data to a binary file?
* How do I read from a text file?
* How do I read from a binary file?
* How do I write a class/struct to a file?

* Why not make everything public in a class?

* How do I run an .exe from my program?

* What IDE should I use?

* What is TCHAR?
* What is LPCSTR?
* What is HWND, is it a class?
* What is TRUE/FALSE?

* How do I clear the console screen?

* If I do *this*, will I have to worry about *that* (Legal questions)

* What do I need for *this* (library setup)

* What's the difference between all the styles of having your 'main' function?

* What is XML, is it fast, is it easy?
* How do I use it in my programs?

* Do I need to have a newline at the end of every file?

* Programming Language1 vs Programming Language2
* OpenGL or DirectX?
* SDL or Allegro?
* Ogre or Irrlicht?
* FMOD or OpenAL?
* Gamedev.net for FlipCode.com? ([grin] Couldn't resist)

* What is the Torque engine?
* Can I do *this* or *that* with it?

* How do I add console to my program?
* How do I remove the console to my program?

* How do I find all the files in a directory?
* How do I move files?

* What are pointers?
* Should I use them?
* Should I care about const correctness?
* What are function pointers and how do I use them?

* What's a namespace and how do I make one?
* Is using namespace std; bad?

* Why can't I have this templated code in my .cpp file and the declaration inmy header file?

* How do I make and use plugins?

* Where can I get a free EBook on *this*

* How do I track memory leaks?
* Do I need my own memory manager?

* Should I use singletons?
* What is a singelton?

* What data structure should I use?

* Is it ok to do delete this;?
* How do I overload new/delete?

* Is returning new memory from a function bad?
* When I use it in a DLL, why does it crash?
* How do I pass memory between exe and dlls then?

* Why signed and unsigned? What's the difference?

* What runtime should I use (MT DB DLL, MT DLL, etc...)

* How do I include a file just once?
* Why don't include guards always work?
* Why doesn't #pragma once always work?
* Why am I getting errors when I include my .cpp files?

* Why shouldn't I prefix my variable names with _?
* What naming convention is the best?

##### Share on other sites
Wow. Now I've got stuff to think about... [smile]

Let's add "How do I make a window class?" (as in C++ class for a Win32 window).

[Edited by - Fruny on June 30, 2005 7:02:18 PM]

##### Share on other sites
Links to some of the great resource threads on the forums perhaps?

Music Software, etc.
SFX & Music Resources
A few tips on how to make your songs sound better

3D & 2D Software Information
Sprites, sprites and more sprites

Web Development Resources

All those are stickied in thier respective forums, but I don't think new users always think to go to the appropriate forum and check the sticky threads.

##### Share on other sites
*why is limiting my fps a bad idea
*why is using a fixed timestep for physics-updates probably the right thing in most cases

1. 1
Rutin
32
2. 2
3. 3
4. 4
5. 5

• 13
• 9
• 9
• 9
• 14
• ### Forum Statistics

• Total Topics
633319
• Total Posts
3011347
• ### Who's Online (See full list)

There are no registered users currently online

×