d2jsp
Log InRegister
d2jsp Forums > Off-Topic > Computers & IT > Programming & Development > How/where Do I Learn This Stuff?
Add Reply New Topic New Poll
Member
Posts: 2,769
Joined: Dec 24 2009
Gold: 14.00
May 15 2014 12:12pm
So far I've learned all the basic(?) stuff on c++, polymorphism, exceptions/handling, overloading, linked lists/binary tree (which kind of fall under templates/class/pointers), etc

How do people learn specific stuff like :

1) How to move between two real-time threads which are scheduled at different frequencies (one thread which has to drive a hardware interface)
2) How to globally synchronize threads in computer shaders
3) How to detect virtual inheritance at compile time

I've been going through different books and none of them mention anything about any of those.
Member
Posts: 9,803
Joined: Jun 28 2005
Gold: 6.67
May 15 2014 01:02pm
A comprehensive list of books has already been prepared by folks at stackoverflow: http://stackoverflow.com/q/388242/1090079

Quote
How to move between two real-time threads
I don't understand what you mean by that. What beyond normal synchronization would you need?

Quote
How to detect virtual inheritance at compile time
I don't think it's possible (beyond looking at the source ;) ), unless I misunderstood your question. You can overload on one class being the base (virtual or not) of another using the only thing you can execute at compile time¹: template metaprogramming. Look up is_base_of: http://en.cppreference.com/w/cpp/types/is_base_of



¹ yeah, not anymore, but ctfe of constexpr is useless here.
Member
Posts: 2,769
Joined: Dec 24 2009
Gold: 14.00
May 15 2014 05:42pm
Quote (KrzaQ2 @ May 15 2014 02:02pm)
A comprehensive list of books has already been prepared by folks at stackoverflow: http://stackoverflow.com/q/388242/1090079

I don't understand what you mean by that. What beyond normal synchronization would you need?

I don't think it's possible (beyond looking at the source ;) ), unless I misunderstood your question. You can overload on one class being the base (virtual or not) of another using the only thing you can execute at compile time¹: template metaprogramming. Look up is_base_of: http://en.cppreference.com/w/cpp/types/is_base_of



¹ yeah, not anymore, but ctfe of constexpr is useless here.

Yeah I've been reading books from that list, they don't really go into every detail though. I guess experience is a lot more informative than books

http://stackoverflow.com/questions/2893791/c-can-virtual-inheritance-be-detected-at-compile-time

Nevermind @ question 1, but here's a question on stack for #3
Member
Posts: 9,803
Joined: Jun 28 2005
Gold: 6.67
May 15 2014 08:16pm
I stand corrected. The documentation says there are some edge cases impossible with boost::is_virtual_base_of, but it seems to work as intended in a quick test.

That being said, yeah, experience is the key. You can add some unique info on programming blogs, conference videos and programming periodicals (I don't know of any beyond ACCU's).
Go Back To Programming & Development Topic List
Add Reply New Topic New Poll