The private key is just a series of 256 ones and zeros. That unique combination identifies your wallet, and the chance of someone else getting that combination is 2^256, which is very very small. Your private key is used to generate public keys, which are bitcoin addresses, and which will hold some amount of bitcoin.
If BTG splits off from BTC, then they will continue with their own chain after the specified split point, say block nr 491,591. Once split, all of the bitcoin addresses which held bitcoin during block nr 491,591 are are treated as bitcoin gold addresses. Meanwhile, the same addresses hold bitcoin for the original chain, which then diverges.
If you hold a private key that holds addresses which in total hold 23 bitcoin, then you also hold 23 bitcoin gold.
To address your question: if you move the coins from the addresses managed by your private key to an exchange, you are effectively moving them to a private key held by the exchange. If the exchange doesn't support BTG, you won't be able to touch the bitcoin gold account, since you don't have the private key to access them (the exchange does). If the exchange does support Bitcoin Gold, then you are probably offered a way to trade with them.
Note that if the exchange poorly implements trading, they could cause you to lose funds because there is no replay protection. If you hold the coins on your private key, you can try to move the bitcoin gold coins to an exchange, but you would most likely have to make sure of the replay protection yourself (which is non-trivial at best).